diff options
author | Ronghua Wu <ronghuawu@google.com> | 2015-10-07 16:52:19 -0700 |
---|---|---|
committer | Haynes Mathew George <hgeorge@codeaurora.org> | 2015-11-03 10:55:17 -0800 |
commit | 6ab73dcdc410e873a585af3a0e0ffd1551c06f2e (patch) | |
tree | 4d8d4fb0585c2e907b6e0b9a09035a1bad6b4cd5 /media/libmediaplayerservice/nuplayer/NuPlayer.cpp | |
parent | f140e521f51b2d48c1f983c2790f4ab55b6dfac9 (diff) | |
download | frameworks_av-6ab73dcdc410e873a585af3a0e0ffd1551c06f2e.zip frameworks_av-6ab73dcdc410e873a585af3a0e0ffd1551c06f2e.tar.gz frameworks_av-6ab73dcdc410e873a585af3a0e0ffd1551c06f2e.tar.bz2 |
nuplayer: don't resume if player is reseting.
cherry-pick of AOSP commit b75de9d4ba6725104342b5376a1047ff1c9b2765
Bug: 24712426
Change-Id: I58cca0bde708a5c3b073ed77e18b62fe81d6c017
Diffstat (limited to 'media/libmediaplayerservice/nuplayer/NuPlayer.cpp')
-rw-r--r-- | media/libmediaplayerservice/nuplayer/NuPlayer.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/media/libmediaplayerservice/nuplayer/NuPlayer.cpp b/media/libmediaplayerservice/nuplayer/NuPlayer.cpp index ec1ab79..1b31f19 100644 --- a/media/libmediaplayerservice/nuplayer/NuPlayer.cpp +++ b/media/libmediaplayerservice/nuplayer/NuPlayer.cpp @@ -206,6 +206,7 @@ NuPlayer::NuPlayer(pid_t pid) mPlaybackSettings(AUDIO_PLAYBACK_RATE_DEFAULT), mVideoFpsHint(-1.f), mStarted(false), + mResetting(false), mSourceStarted(false), mPaused(false), mPausedByClient(false), @@ -1163,6 +1164,8 @@ void NuPlayer::onMessageReceived(const sp<AMessage> &msg) { { ALOGV("kWhatReset"); + mResetting = true; + mDeferredActions.push_back( new FlushDecoderAction( FLUSH_CMD_SHUTDOWN /* audio */, @@ -1248,7 +1251,8 @@ void NuPlayer::onMessageReceived(const sp<AMessage> &msg) { } void NuPlayer::onResume() { - if (!mPaused) { + if (!mPaused || mResetting) { + ALOGD_IF(mResetting, "resetting, onResume discarded"); return; } mPaused = false; @@ -1969,6 +1973,7 @@ void NuPlayer::performReset() { } mStarted = false; + mResetting = false; mSourceStarted = false; } |