summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--msm8998/QCamera2/HAL3/QCamera3HWI.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/msm8998/QCamera2/HAL3/QCamera3HWI.cpp b/msm8998/QCamera2/HAL3/QCamera3HWI.cpp
index 8a4b25c..4e58fcc 100644
--- a/msm8998/QCamera2/HAL3/QCamera3HWI.cpp
+++ b/msm8998/QCamera2/HAL3/QCamera3HWI.cpp
@@ -15141,7 +15141,8 @@ int32_t QCamera3HardwareInterface::notifyErrorForPendingRequests()
while (pendingRequest != mPendingRequestsList.end() ||
pendingBuffer != mPendingBuffersMap.mPendingBuffersInRequest.end()) {
if (pendingRequest == mPendingRequestsList.end() ||
- pendingBuffer->frame_number < pendingRequest->frame_number) {
+ ((pendingBuffer != mPendingBuffersMap.mPendingBuffersInRequest.end()) &&
+ (pendingBuffer->frame_number < pendingRequest->frame_number))) {
// If metadata for this frame was sent, notify about a buffer error and returns buffers
// with error.
for (auto &info : pendingBuffer->mPendingBufferList) {
@@ -15165,7 +15166,8 @@ int32_t QCamera3HardwareInterface::notifyErrorForPendingRequests()
pendingBuffer = mPendingBuffersMap.mPendingBuffersInRequest.erase(pendingBuffer);
} else if (pendingBuffer == mPendingBuffersMap.mPendingBuffersInRequest.end() ||
- pendingBuffer->frame_number > pendingRequest->frame_number) {
+ ((pendingRequest != mPendingRequestsList.end()) &&
+ (pendingBuffer->frame_number > pendingRequest->frame_number))) {
// If the buffers for this frame were sent already, notify about a result error.
camera3_notify_msg_t notify_msg;
memset(&notify_msg, 0, sizeof(camera3_notify_msg_t));