diff options
author | Steve Kondik <steve@cyngn.com> | 2016-03-12 18:45:36 -0800 |
---|---|---|
committer | Steve Kondik <steve@cyngn.com> | 2016-03-12 18:45:36 -0800 |
commit | 50c27eab97d5b3196a4912893e48fb36cbf0cc6b (patch) | |
tree | c4c8592cdedbaae0204c5d3094b943b123738c83 /media/libmediaplayerservice | |
parent | 46da121c84a6f343e262b89a7ec4ac7941d58028 (diff) | |
parent | bc7ce29314a914e467bcbf51db0836d80753a7a1 (diff) | |
download | frameworks_av-50c27eab97d5b3196a4912893e48fb36cbf0cc6b.zip frameworks_av-50c27eab97d5b3196a4912893e48fb36cbf0cc6b.tar.gz frameworks_av-50c27eab97d5b3196a4912893e48fb36cbf0cc6b.tar.bz2 |
Merge branch 'dr15' into cm-13.0
Diffstat (limited to 'media/libmediaplayerservice')
-rw-r--r-- | media/libmediaplayerservice/MediaPlayerService.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/media/libmediaplayerservice/MediaPlayerService.cpp b/media/libmediaplayerservice/MediaPlayerService.cpp index da5bb9a..1e911c2 100644 --- a/media/libmediaplayerservice/MediaPlayerService.cpp +++ b/media/libmediaplayerservice/MediaPlayerService.cpp @@ -1936,8 +1936,13 @@ void MediaPlayerService::AudioOutput::pause() void MediaPlayerService::AudioOutput::close() { ALOGV("close"); - Mutex::Autolock lock(mLock); - close_l(); + sp<AudioTrack> track; + { + Mutex::Autolock lock(mLock); + track = mTrack; + close_l(); // clears mTrack + } + // destruction of the track occurs outside of mutex. } void MediaPlayerService::AudioOutput::setVolume(float left, float right) |