summaryrefslogtreecommitdiffstats
path: root/media
diff options
context:
space:
mode:
authorGreg Hackmann <ghackmann@google.com>2012-12-14 13:49:48 -0800
committerGreg Hackmann <ghackmann@google.com>2012-12-14 13:50:40 -0800
commit10174bfdac537730be6729b9d47ad7d5bafed072 (patch)
tree748e86142cf85a9c49a1c7a4db67a24da5d90d79 /media
parentda690cef33c2a1db108ebddeb1e31b43afa2347d (diff)
downloadframeworks_av-10174bfdac537730be6729b9d47ad7d5bafed072.zip
frameworks_av-10174bfdac537730be6729b9d47ad7d5bafed072.tar.gz
frameworks_av-10174bfdac537730be6729b9d47ad7d5bafed072.tar.bz2
SurfaceMediaSource: wait on fence from acquired buffers
Change-Id: I4ab93a4adeec536648258c70a7d943503d9b10f4 Signed-off-by: Greg Hackmann <ghackmann@google.com>
Diffstat (limited to 'media')
-rw-r--r--media/libstagefright/SurfaceMediaSource.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/media/libstagefright/SurfaceMediaSource.cpp b/media/libstagefright/SurfaceMediaSource.cpp
index 3c002fc..0345de6 100644
--- a/media/libstagefright/SurfaceMediaSource.cpp
+++ b/media/libstagefright/SurfaceMediaSource.cpp
@@ -298,6 +298,10 @@ status_t SurfaceMediaSource::read( MediaBuffer **buffer,
// wait for a buffer to be queued
mFrameAvailableCondition.wait(mMutex);
} else if (err == OK) {
+ err = item.mFence->waitForever(1000, "SurfaceMediaSource::read");
+ if (err) {
+ ALOGW("read: failed to wait for buffer fence: %d", err);
+ }
// First time seeing the buffer? Added it to the SMS slot
if (item.mGraphicBuffer != NULL) {