| Index: content/renderer/media/android/webmediaplayer_android.cc
|
| diff --git a/content/renderer/media/android/webmediaplayer_android.cc b/content/renderer/media/android/webmediaplayer_android.cc
|
| index 35e898e9bac8dba0ea903ec4571ad4eec8ade2cc..4bb016233a36016c2ab746b12df489db162da957 100644
|
| --- a/content/renderer/media/android/webmediaplayer_android.cc
|
| +++ b/content/renderer/media/android/webmediaplayer_android.cc
|
| @@ -735,6 +735,10 @@ void WebMediaPlayerAndroid::OnMediaMetadataChanged(
|
| }
|
| }
|
|
|
| + // UpdateReadyState(WebMediaPlayer::ReadyStateHaveMetadata) will trigger a
|
| + // call to duration(), which checks |has_valid_metadata_|. so
|
| + // |has_valid_metadata_| has to be updated before calling UpdateReadyState().
|
| + has_valid_metadata_ = success;
|
| if (ready_state_ != WebMediaPlayer::ReadyStateHaveEnoughData) {
|
| UpdateReadyState(WebMediaPlayer::ReadyStateHaveMetadata);
|
| UpdateReadyState(WebMediaPlayer::ReadyStateHaveEnoughData);
|
| @@ -745,8 +749,6 @@ void WebMediaPlayerAndroid::OnMediaMetadataChanged(
|
| if (success)
|
| OnVideoSizeChanged(width, height);
|
|
|
| - has_valid_metadata_ = success;
|
| -
|
| if (need_to_signal_duration_changed)
|
| client_->durationChanged();
|
| }
|
|
|