diff options
| author | 2017-05-16 21:08:18 +0000 | |
|---|---|---|
| committer | 2017-05-16 21:08:18 +0000 | |
| commit | b829d2abe93377eec1647e2c078b6f5285231ce9 (patch) | |
| tree | 61e1a063d9a53991387063b72c6640c1ad88f352 /libs/gui/Surface.cpp | |
| parent | 1ceadac71b38debd2f69ab75bda01e8e0febd8bc (diff) | |
| parent | d65a388e1b426afb1a4e4c5dd9b47c605ed26b96 (diff) | |
Merge "libgui: Check slot received from IGBP in Surface" into lmp-dev am: 98e3c06010 am: 970bb51580 am: 78976cea8f am: 2fe15aa6f0 am: cce83f15e5 am: 9a44ee0742 am: 787aa48f41 am: f69675e5c2
am: d65a388e1b
Change-Id: I73489256702d123302a204c2720f9752515020ba
Diffstat (limited to 'libs/gui/Surface.cpp')
| -rw-r--r-- | libs/gui/Surface.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libs/gui/Surface.cpp b/libs/gui/Surface.cpp index 08382908ba..5a2ca8d7ac 100644 --- a/libs/gui/Surface.cpp +++ b/libs/gui/Surface.cpp @@ -306,6 +306,12 @@ int Surface::dequeueBuffer(android_native_buffer_t** buffer, int* fenceFd) { return result; } + if (buf < 0 || buf >= NUM_BUFFER_SLOTS) { + ALOGE("dequeueBuffer: IGraphicBufferProducer returned invalid slot number %d", buf); + android_errorWriteLog(0x534e4554, "36991414"); // SafetyNet logging + return FAILED_TRANSACTION; + } + Mutex::Autolock lock(mMutex); sp<GraphicBuffer>& gbuf(mSlots[buf].buffer); |