diff options
| author | 2017-05-16 20:53:16 +0000 | |
|---|---|---|
| committer | 2017-05-16 20:53:16 +0000 | |
| commit | cce83f15e5689e2f39408c6cbeec32bb9616fc5f (patch) | |
| tree | 61ad030f8084d21882e63d85fd3d5c510e5f6ffc | |
| parent | 593a1a217a536d8267e1d490e375bbaa80c4f0aa (diff) | |
| parent | 2fe15aa6f00b3c58e4dda26d2c117e422056ffa1 (diff) | |
Merge "libgui: Check slot received from IGBP in Surface" into lmp-dev am: 98e3c06010 am: 970bb51580 am: 78976cea8f
am: 2fe15aa6f0
Change-Id: I36fcc82af237645b61c69d70c574843a5b2753c8
| -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 4b76f9834c..22aa4ecc36 100644 --- a/libs/gui/Surface.cpp +++ b/libs/gui/Surface.cpp @@ -237,6 +237,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); |