Loading media/libmediaplayerservice/MediaPlayerService.cpp +9 −0 Original line number Diff line number Diff line Loading @@ -2514,6 +2514,15 @@ void MediaPlayerService::AudioOutput::close() { Mutex::Autolock lock(mLock); track = mTrack; } // do not hold lock while joining. if (track) { track->stopAndJoinCallbacks(); } { Mutex::Autolock lock(mLock); close_l(); // clears mTrack } // destruction of the track occurs outside of mutex. Loading Loading
media/libmediaplayerservice/MediaPlayerService.cpp +9 −0 Original line number Diff line number Diff line Loading @@ -2514,6 +2514,15 @@ void MediaPlayerService::AudioOutput::close() { Mutex::Autolock lock(mLock); track = mTrack; } // do not hold lock while joining. if (track) { track->stopAndJoinCallbacks(); } { Mutex::Autolock lock(mLock); close_l(); // clears mTrack } // destruction of the track occurs outside of mutex. Loading