Abort MSP::OnPrefetchDone() if just after MSP::Release(). Let seek and config change...
commit5444f9e4f2c6c8f0e1565050238843e529ece085
authorwolenetz@chromium.org <wolenetz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>
Sat, 2 Nov 2013 13:28:46 +0000 (2 13:28 +0000)
committerwolenetz@chromium.org <wolenetz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>
Sat, 2 Nov 2013 13:28:46 +0000 (2 13:28 +0000)
treee2303f32cd24c0d106c5c9792f238a905615eb3a
parent601a5b4da83f30c2e6ec5ba243286bf86799b6cd
Abort MSP::OnPrefetchDone() if just after MSP::Release(). Let seek and config change survive.

Prevents DCHECK'ing on unexpectedly missing pending prefetch done event
in MSP::OnPrefetchDone() since OnPrefetchDone() could already be posted
when Release() occurs.
Also allows pending seek or config change to survive Release().

More robust fix for correctly tracking player and stream state across MSP::Release() + Start() is tracked by http://crbug.com/306314.
Also, http://crbug.com/304234 tracks more robust buffering by browser player that may modify prefetch behavior.

R=qinmin@chromium.org,acolwell@chromium.org
BUG=302867, 306314, 304234
TEST=All media_unittests pass locally on Android with MediaCodecBridge available.

Review URL: https://codereview.chromium.org/51613002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232601 0039d316-1c4b-4281-b951-d872f2087c98
media/base/android/media_decoder_job.cc
media/base/android/media_source_player.cc
media/base/android/media_source_player.h
media/base/android/media_source_player_unittest.cc