summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Daniel Lam <dalam@google.com> 2012-03-07 14:11:29 -0800
committer Daniel Lam <dalam@google.com> 2012-03-07 14:15:34 -0800
commitc930cf3cf32d004dc636545940197a717c081eae (patch)
treed319e264441551015577d589d7de81abc7c9b10b
parent75d022af1f24cf2d8a7551183ea5bbe943d25d21 (diff)
BufferQueue: fixed issues with buffer slots not available
Bug: 6120953 Change-Id: Ief43f042ee9e1512e86fff8632a1c9dd31bdff35
-rw-r--r--libs/gui/BufferQueue.cpp9
1 files changed, 2 insertions, 7 deletions
diff --git a/libs/gui/BufferQueue.cpp b/libs/gui/BufferQueue.cpp
index 25a4c227ff6e..513a00e9ea4a 100644
--- a/libs/gui/BufferQueue.cpp
+++ b/libs/gui/BufferQueue.cpp
@@ -370,18 +370,13 @@ status_t BufferQueue::dequeueBuffer(int *outBuf, uint32_t w, uint32_t h,
}
}
- // we're in synchronous mode and didn't find a buffer, we need to
- // wait for some buffers to be consumed
- tryAgain = mSynchronousMode && (foundSync == INVALID_BUFFER_SLOT);
+ // if no buffer is found, wait for a buffer to be released
+ tryAgain = found == INVALID_BUFFER_SLOT;
if (tryAgain) {
mDequeueCondition.wait(mMutex);
}
}
- if (mSynchronousMode && found == INVALID_BUFFER_SLOT) {
- // foundSync guaranteed to be != INVALID_BUFFER_SLOT
- found = foundSync;
- }
if (found == INVALID_BUFFER_SLOT) {
// This should not happen.