summaryrefslogtreecommitdiff
path: root/tests/camera2/camera2.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/camera2/camera2.cpp')
-rw-r--r--tests/camera2/camera2.cpp20
1 files changed, 12 insertions, 8 deletions
diff --git a/tests/camera2/camera2.cpp b/tests/camera2/camera2.cpp
index 0f750700..92ef2212 100644
--- a/tests/camera2/camera2.cpp
+++ b/tests/camera2/camera2.cpp
@@ -92,7 +92,8 @@ class Camera2Test: public testing::Test {
std::cout << " Version: 0x" << std::hex <<
info.device_version << std::endl;
}
- if (info.device_version >= CAMERA_DEVICE_API_VERSION_2_0) {
+ if (info.device_version >= CAMERA_DEVICE_API_VERSION_2_0 &&
+ info.device_version < CAMERA_DEVICE_API_VERSION_3_0) {
sCameraSupportsHal2[i] = true;
ASSERT_TRUE(NULL != info.static_camera_characteristics);
IF_ALOGV() {
@@ -181,12 +182,15 @@ class Camera2Test: public testing::Test {
return OK;
}
- static status_t closeCameraDevice(camera2_device_t *cam_dev) {
+ static status_t closeCameraDevice(camera2_device_t **cam_dev) {
int res;
+ if (*cam_dev == NULL ) return OK;
+
ALOGV("Closing camera %p", cam_dev);
- hw_device_t *dev = reinterpret_cast<hw_device_t *>(cam_dev);
+ hw_device_t *dev = reinterpret_cast<hw_device_t *>(*cam_dev);
res = dev->close(dev);
+ *cam_dev = NULL;
return res;
}
@@ -195,7 +199,7 @@ class Camera2Test: public testing::Test {
status_t res;
if (mDevice != NULL) {
- closeCameraDevice(mDevice);
+ closeCameraDevice(&mDevice);
}
mDevice = openCameraDevice(id);
ASSERT_TRUE(NULL != mDevice) << "Failed to open camera device";
@@ -324,7 +328,7 @@ class Camera2Test: public testing::Test {
delete mStreams[i];
}
if (mDevice != NULL) {
- closeCameraDevice(mDevice);
+ closeCameraDevice(&mDevice);
}
TearDownModule();
@@ -366,7 +370,7 @@ TEST_F(Camera2Test, OpenClose) {
camera2_device_t *d = openCameraDevice(id);
ASSERT_TRUE(NULL != d) << "Failed to open camera device";
- res = closeCameraDevice(d);
+ res = closeCameraDevice(&d);
ASSERT_EQ(NO_ERROR, res) << "Failed to close camera device";
}
}
@@ -499,7 +503,7 @@ TEST_F(Camera2Test, Capture1Raw) {
ASSERT_EQ(OK, waitUntilDrained());
ASSERT_NO_FATAL_FAILURE(disconnectStream(streamId));
- res = closeCameraDevice(mDevice);
+ res = closeCameraDevice(&mDevice);
ASSERT_EQ(NO_ERROR, res) << "Failed to close camera device";
}
@@ -802,7 +806,7 @@ TEST_F(Camera2Test, Capture1Jpeg) {
ASSERT_EQ(OK, waitUntilDrained());
ASSERT_NO_FATAL_FAILURE(disconnectStream(streamId));
- res = closeCameraDevice(mDevice);
+ res = closeCameraDevice(&mDevice);
ASSERT_EQ(NO_ERROR, res) << "Failed to close camera device";
}