summaryrefslogtreecommitdiffstats
path: root/services
diff options
context:
space:
mode:
authorEino-Ville Talvala <etalvala@google.com>2013-06-14 08:35:48 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2013-06-14 08:35:48 -0700
commit0cc754918a3c1353164ccc5798f63b28f65db406 (patch)
tree17ae714410130417129ae3122f024bc2df2bc412 /services
parente4a453d4b7563d1dab674df6ce52c291e63c6ca7 (diff)
parent26bc908b3dafb5d80f092a22c5c71116526eae06 (diff)
downloadframeworks_av-0cc754918a3c1353164ccc5798f63b28f65db406.zip
frameworks_av-0cc754918a3c1353164ccc5798f63b28f65db406.tar.gz
frameworks_av-0cc754918a3c1353164ccc5798f63b28f65db406.tar.bz2
am 26bc908b: Camera2/3: Make sure to wait for idle after still capture.
* commit '26bc908b3dafb5d80f092a22c5c71116526eae06': Camera2/3: Make sure to wait for idle after still capture.
Diffstat (limited to 'services')
-rw-r--r--services/camera/libcameraservice/camera2/CaptureSequencer.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/services/camera/libcameraservice/camera2/CaptureSequencer.cpp b/services/camera/libcameraservice/camera2/CaptureSequencer.cpp
index 266e516..e5a011c 100644
--- a/services/camera/libcameraservice/camera2/CaptureSequencer.cpp
+++ b/services/camera/libcameraservice/camera2/CaptureSequencer.cpp
@@ -253,6 +253,12 @@ CaptureSequencer::CaptureState CaptureSequencer::manageDone(sp<Camera2Client> &c
res = INVALID_OPERATION;
break;
case Parameters::STILL_CAPTURE:
+ res = client->getCameraDevice()->waitUntilDrained();
+ if (res != OK) {
+ ALOGE("%s: Camera %d: Can't idle after still capture: "
+ "%s (%d)", __FUNCTION__, client->getCameraId(),
+ strerror(-res), res);
+ }
l.mParameters.state = Parameters::STOPPED;
break;
case Parameters::VIDEO_SNAPSHOT: