summaryrefslogtreecommitdiffstats
path: root/media/libmediaplayerservice/MediaPlayerService.cpp
diff options
context:
space:
mode:
authorbeanz <beanz@marvell.com>2012-11-05 09:51:43 +0800
committerbeanz <beanz@marvell.com>2012-11-05 09:51:43 +0800
commitdcfefde6be8f9f33bbd2b3546f3be946d958d677 (patch)
treefc085ca88168b58486f942b64516a8008cfe1545 /media/libmediaplayerservice/MediaPlayerService.cpp
parent1baa01a52f24566c134313fade8b19a582654638 (diff)
downloadframeworks_av-dcfefde6be8f9f33bbd2b3546f3be946d958d677.zip
frameworks_av-dcfefde6be8f9f33bbd2b3546f3be946d958d677.tar.gz
frameworks_av-dcfefde6be8f9f33bbd2b3546f3be946d958d677.tar.bz2
fix a race condition of MediaPlayerServce::Client::mClient
there will be race condition between mClient.clear in MediaPlayerServce::Client::disconnect method and c=client->mClient in in MediaPlayerServce::Client::notify method Change-Id: I767294c4cb864c08e9c0e9f23d6d304a39016205 Signed-off-by: beanz <beanz@marvell.com>
Diffstat (limited to 'media/libmediaplayerservice/MediaPlayerService.cpp')
-rw-r--r--media/libmediaplayerservice/MediaPlayerService.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/media/libmediaplayerservice/MediaPlayerService.cpp b/media/libmediaplayerservice/MediaPlayerService.cpp
index c47fbd6..3a4122a 100644
--- a/media/libmediaplayerservice/MediaPlayerService.cpp
+++ b/media/libmediaplayerservice/MediaPlayerService.cpp
@@ -523,8 +523,8 @@ void MediaPlayerService::Client::disconnect()
{
Mutex::Autolock l(mLock);
p = mPlayer;
+ mClient.clear();
}
- mClient.clear();
mPlayer.clear();