diff options
author | Dheeraj CVR <cvr.dheeraj@gmail.com> | 2014-03-24 07:16:42 +0530 |
---|---|---|
committer | Dheeraj CVR <cvr.dheeraj@gmail.com> | 2014-03-24 07:16:45 +0530 |
commit | 7998a46db189e42ff48dfa19e3b421402b72343e (patch) | |
tree | 6b42322639a3ff5f44b5dffa0de79896bb90d1e7 | |
parent | 0378c1e7c0d105d51d6326a87ba14b1890338311 (diff) | |
download | device_samsung_smdk4412-common-7998a46db189e42ff48dfa19e3b421402b72343e.zip device_samsung_smdk4412-common-7998a46db189e42ff48dfa19e3b421402b72343e.tar.gz device_samsung_smdk4412-common-7998a46db189e42ff48dfa19e3b421402b72343e.tar.bz2 |
smdk4412-common: camera: release face detection memory when capture stops
Change-Id: I6724ce6dde3c4b6242a06b73808905a6de094d4a
-rw-r--r-- | camera/exynos_camera.c | 10 |
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; |