| Index: media/filters/renderer_impl.cc
|
| diff --git a/media/filters/renderer_impl.cc b/media/filters/renderer_impl.cc
|
| index 1dcbe1cb88aa705a4877d0a129a2ccbdd2348bba..5361a2d468fd45e7e5e66fa5d163ad2e4e533d74 100644
|
| --- a/media/filters/renderer_impl.cc
|
| +++ b/media/filters/renderer_impl.cc
|
| @@ -456,9 +456,10 @@ void RendererImpl::StartPlayback() {
|
| interpolation_state_ = INTERPOLATION_WAITING_FOR_AUDIO_TIME_UPDATE;
|
| time_source_->StartTicking();
|
| } else {
|
| + base::TimeDelta duration = get_duration_cb_.Run();
|
| base::AutoLock auto_lock(interpolator_lock_);
|
| interpolation_state_ = INTERPOLATION_STARTED;
|
| - interpolator_->SetUpperBound(get_duration_cb_.Run());
|
| + interpolator_->SetUpperBound(duration);
|
| interpolator_->StartInterpolating();
|
| }
|
| }
|
| @@ -505,8 +506,9 @@ void RendererImpl::OnAudioRendererEnded() {
|
|
|
| // Start clock since there is no more audio to trigger clock updates.
|
| {
|
| + base::TimeDelta duration = get_duration_cb_.Run();
|
| base::AutoLock auto_lock(interpolator_lock_);
|
| - interpolator_->SetUpperBound(get_duration_cb_.Run());
|
| + interpolator_->SetUpperBound(duration);
|
| StartClockIfWaitingForTimeUpdate_Locked();
|
| }
|
|
|
| @@ -537,9 +539,9 @@ void RendererImpl::RunEndedCallbackIfNeeded() {
|
| return;
|
|
|
| {
|
| + base::TimeDelta duration = get_duration_cb_.Run();
|
| base::AutoLock auto_lock(interpolator_lock_);
|
| PauseClockAndStopTicking_Locked();
|
| - base::TimeDelta duration = get_duration_cb_.Run();
|
| interpolator_->SetBounds(duration, duration);
|
| }
|
|
|
|
|