summaryrefslogtreecommitdiffstats
path: root/camera
diff options
context:
space:
mode:
Diffstat (limited to 'camera')
-rw-r--r--camera/exynos_camera.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/camera/exynos_camera.c b/camera/exynos_camera.c
index 2335173..a15d904 100644
--- a/camera/exynos_camera.c
+++ b/camera/exynos_camera.c
@@ -2114,6 +2114,11 @@ int exynos_camera_capture_start(struct exynos_camera *exynos_camera)
goto complete;
error:
+ if (exynos_camera->face_data != NULL && exynos_camera->face_data->release != NULL) {
+ exynos_camera->face_data->release(exynos_camera->face_data);
+ exynos_camera->face_data = NULL;
+ }
+
if (exynos_camera->capture_memory != NULL && exynos_camera->capture_memory->release != NULL) {
exynos_camera->capture_memory->release(exynos_camera->capture_memory);
exynos_camera->capture_memory = NULL;
@@ -2158,6 +2163,11 @@ void exynos_camera_capture_stop(struct exynos_camera *exynos_camera)
ALOGE("%s: Unable to stop stream", __func__);
}
+ if (exynos_camera->face_data != NULL && exynos_camera->face_data->release != NULL) {
+ exynos_camera->face_data->release(exynos_camera->face_data);
+ exynos_camera->face_data = NULL;
+ }
+
if (exynos_camera->capture_memory != NULL && exynos_camera->capture_memory->release != NULL) {
exynos_camera->capture_memory->release(exynos_camera->capture_memory);
exynos_camera->capture_memory = NULL;