diff options
| author | 2012-03-07 14:11:29 -0800 | |
|---|---|---|
| committer | 2012-03-07 14:15:34 -0800 | |
| commit | c930cf3cf32d004dc636545940197a717c081eae (patch) | |
| tree | d319e264441551015577d589d7de81abc7c9b10b | |
| parent | 75d022af1f24cf2d8a7551183ea5bbe943d25d21 (diff) | |
BufferQueue: fixed issues with buffer slots not available
Bug: 6120953
Change-Id: Ief43f042ee9e1512e86fff8632a1c9dd31bdff35
| -rw-r--r-- | libs/gui/BufferQueue.cpp | 9 |
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. |