diff --git a/libs/gui/Surface.cpp b/libs/gui/Surface.cpp index b56030e9e..0e2baa28f 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; } }