summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--camera/exynos_camera.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/camera/exynos_camera.c b/camera/exynos_camera.c
index a7d2a8c..47ea1cf 100644
--- a/camera/exynos_camera.c
+++ b/camera/exynos_camera.c
@@ -2602,6 +2602,12 @@ int exynos_camera_picture_callback(struct exynos_camera *exynos_camera,
pthread_mutex_lock(&exynos_camera->picture_mutex);
if (!exynos_camera->picture_enabled && !exynos_camera->camera_fimc_is) {
+ if (exynos_camera->camera_capture_format == V4L2_PIX_FMT_INTERLEAVED && exynos_camera->focus_mode == FOCUS_MODE_CONTINOUS_PICTURE && exynos_camera->capture_auto_focus_result == CAMERA_AF_STATUS_IN_PROGRESS) {
+ LOGD("%s: Not asking for picture until auto focus is done", __func__);
+ pthread_mutex_unlock(&exynos_camera->picture_mutex);
+ return 0;
+ }
+
rc = exynos_v4l2_s_ctrl(exynos_camera, 0, V4L2_CID_CAMERA_CAPTURE, 0);
if (rc < 0) {
LOGE("%s: Unable to set capture", __func__);