summaryrefslogtreecommitdiffstats
path: root/media/libmediaplayerservice
diff options
context:
space:
mode:
authorAndy Hung <hunga@google.com>2014-11-17 13:42:01 -0800
committerAndy Hung <hunga@google.com>2014-11-17 13:46:12 -0800
commitb51457f8d915e0ed8edf66d1d2c263ab4a792be8 (patch)
treee4abde0a9cd2782282bf2bb4ed0687b21f207e25 /media/libmediaplayerservice
parent97e6ca1a0be83e420ab238d9a1c31d3112126646 (diff)
downloadframeworks_av-b51457f8d915e0ed8edf66d1d2c263ab4a792be8.zip
frameworks_av-b51457f8d915e0ed8edf66d1d2c263ab4a792be8.tar.gz
frameworks_av-b51457f8d915e0ed8edf66d1d2c263ab4a792be8.tar.bz2
Fix race condition in signaling completion for decode.
Bug: 18048775 Change-Id: I2207eb2cf30cf205d9bf414edbb1d3e709185f67
Diffstat (limited to 'media/libmediaplayerservice')
-rw-r--r--media/libmediaplayerservice/MediaPlayerService.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/media/libmediaplayerservice/MediaPlayerService.cpp b/media/libmediaplayerservice/MediaPlayerService.cpp
index c120898..d461af3 100644
--- a/media/libmediaplayerservice/MediaPlayerService.cpp
+++ b/media/libmediaplayerservice/MediaPlayerService.cpp
@@ -2125,6 +2125,7 @@ ssize_t MediaPlayerService::AudioCache::write(const void* buffer, size_t size)
// immutable with respect to future writes.
//
// It is thus safe for another thread to read the AudioCache.
+ Mutex::Autolock lock(mLock);
mCommandComplete = true;
mSignal.signal();
}