From 1a227437be33157175b4de5f47d08a02647ee71a Mon Sep 17 00:00:00 2001 From: Mathias Agopian Date: Wed, 17 Aug 2011 12:45:40 -0700 Subject: fix a small race condition when returning the default width/height of a SurfaceTexture Change-Id: I581bf609505dfb5d4ec5957b2ef2c77df6cfb15f --- libs/gui/SurfaceTexture.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'libs/gui') diff --git a/libs/gui/SurfaceTexture.cpp b/libs/gui/SurfaceTexture.cpp index 7ac4343..b2441ce 100644 --- a/libs/gui/SurfaceTexture.cpp +++ b/libs/gui/SurfaceTexture.cpp @@ -482,17 +482,16 @@ status_t SurfaceTexture::queueBuffer(int buf, int64_t timestamp, mSlots[buf].mScalingMode = mNextScalingMode; mSlots[buf].mTimestamp = timestamp; mDequeueCondition.signal(); + + *outWidth = mDefaultWidth; + *outHeight = mDefaultHeight; + *outTransform = 0; } // scope for the lock // call back without lock held if (listener != 0) { listener->onFrameAvailable(); } - - *outWidth = mDefaultWidth; - *outHeight = mDefaultHeight; - *outTransform = 0; - return OK; } -- cgit v1.1