diff options
| author | 2012-11-19 15:17:27 -0800 | |
|---|---|---|
| committer | 2012-11-19 15:17:27 -0800 | |
| commit | bd3e837ec726e5a1c7fca7173d8230ca60a3ba6d (patch) | |
| tree | 3142468bf65a16835c748ade217b6007be3a5466 /libs/gui/BufferQueue.cpp | |
| parent | 75220f9b93bdd8acedefe46d38fffc911a704637 (diff) | |
| parent | c208cdd402d767228a34074d589c6368cc656b7d (diff) | |
am c208cdd4: am 1d3612f1: am 2a8c49eb: fix an out-of-bounds memory access
* commit 'c208cdd402d767228a34074d589c6368cc656b7d':
fix an out-of-bounds memory access
Diffstat (limited to 'libs/gui/BufferQueue.cpp')
| -rw-r--r-- | libs/gui/BufferQueue.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/libs/gui/BufferQueue.cpp b/libs/gui/BufferQueue.cpp index 590946a854..607e0bdbec 100644 --- a/libs/gui/BufferQueue.cpp +++ b/libs/gui/BufferQueue.cpp @@ -314,10 +314,12 @@ status_t BufferQueue::dequeueBuffer(int *outBuf, sp<Fence>& outFence, * the consumer may still have pending reads of the * buffers in flight. */ - bool isOlder = mSlots[i].mFrameNumber < - mSlots[found].mFrameNumber; - if (found < 0 || isOlder) { - found = i; + if (found >= 0) { + bool isOlder = mSlots[i].mFrameNumber < + mSlots[found].mFrameNumber; + if (isOlder) { + found = i; + } } } } |