am 3576742a: am 4d410ede: Camera2: Fix off-by-one error in ZSL selection.
* commit '3576742a2bb3dc10bf8256579d600d85f17c3835':
Camera2: Fix off-by-one error in ZSL selection.
diff --git a/services/camera/libcameraservice/camera2/ZslProcessor.cpp b/services/camera/libcameraservice/camera2/ZslProcessor.cpp
index 5208574..1937955 100644
--- a/services/camera/libcameraservice/camera2/ZslProcessor.cpp
+++ b/services/camera/libcameraservice/camera2/ZslProcessor.cpp
@@ -254,11 +254,14 @@
if (mZslQueueTail != mZslQueueHead) {
CameraMetadata request;
size_t index = mZslQueueTail;
- while (request.isEmpty() && index != mZslQueueHead) {
- request = mZslQueue[index].frame;
+ while (index != mZslQueueHead) {
+ if (!mZslQueue[index].frame.isEmpty()) {
+ request = mZslQueue[index].frame;
+ break;
+ }
index = (index + 1) % kZslBufferDepth;
}
- if (request.isEmpty()) {
+ if (index == mZslQueueHead) {
ALOGV("%s: ZSL queue has no valid frames to send yet.",
__FUNCTION__);
return NOT_ENOUGH_DATA;