Camera2: Tests: Release streams after HAL is unloaded
This fixes a segfault in the HAL where it was trying to write to a locked buffer
that disappeared from underneath it.
Any users of CameraModuleFixture should now call SetUp/TearDown explicitly.
Other classes remain unchanged until we need a custom TearDown order for them.
Change-Id: I9aa8c2d86492a76f2c01c1ad4cbe0cf91e5c7916
diff --git a/tests/camera2/CameraStreamFixture.h b/tests/camera2/CameraStreamFixture.h
index 7a6fa31..569b9d1 100644
--- a/tests/camera2/CameraStreamFixture.h
+++ b/tests/camera2/CameraStreamFixture.h
@@ -68,6 +68,8 @@
void SetUp() {
TEST_EXTENSION_FORKING_SET_UP;
+ CameraModuleFixture::SetUp();
+
CameraStreamParams p = mParam;
sp<Camera2Device> device = mDevice;
@@ -89,6 +91,13 @@
}
void TearDown() {
TEST_EXTENSION_FORKING_TEAR_DOWN;
+
+ // important: shut down HAL before releasing streams
+ CameraModuleFixture::TearDown();
+
+ mNativeWindow.clear();
+ mCpuConsumer.clear();
+ mFrameListener.clear();
}
protected: