diff options
author | Jesse Hall <jessehall@google.com> | 2014-10-02 11:09:03 -0700 |
---|---|---|
committer | Jesse Hall <jessehall@google.com> | 2014-10-02 18:16:19 +0000 |
commit | 9f5a1b6abd5d77923bf5e0f1c5e2816fdee832c2 (patch) | |
tree | 3345b2d953285216c558b16b0c2b4db0ee8b54c5 /libs | |
parent | 5ee2c9d20c0fbecf6b4a482eb8d8bfdf85d0d424 (diff) | |
download | frameworks_native-9f5a1b6abd5d77923bf5e0f1c5e2816fdee832c2.zip frameworks_native-9f5a1b6abd5d77923bf5e0f1c5e2816fdee832c2.tar.gz frameworks_native-9f5a1b6abd5d77923bf5e0f1c5e2816fdee832c2.tar.bz2 |
Surface: cancel the dequeued buffer when requestBuffer fails
Partial fix for bug: 17477219
Change-Id: Ibf5a9e26e02c4be8854925a77a70f5c9c7dcf6f2
Diffstat (limited to 'libs')
-rw-r--r-- | libs/gui/Surface.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/libs/gui/Surface.cpp b/libs/gui/Surface.cpp index b56030e..0e2baa2 100644 --- a/libs/gui/Surface.cpp +++ b/libs/gui/Surface.cpp @@ -237,6 +237,7 @@ int Surface::dequeueBuffer(android_native_buffer_t** buffer, int* fenceFd) { result = mGraphicBufferProducer->requestBuffer(buf, &gbuf); if (result != NO_ERROR) { ALOGE("dequeueBuffer: IGraphicBufferProducer::requestBuffer failed: %d", result); + mGraphicBufferProducer->cancelBuffer(buf, fence); return result; } } |