| Index: services/media/factory_service/media_timeline_controller_impl.cc
|
| diff --git a/services/media/factory_service/media_timeline_controller_impl.cc b/services/media/factory_service/media_timeline_controller_impl.cc
|
| index b758960569d36a71157ed3842114b8b2387382fa..696082a3d29c3fa3f0f8505e42a7ee1cc816bd33 100644
|
| --- a/services/media/factory_service/media_timeline_controller_impl.cc
|
| +++ b/services/media/factory_service/media_timeline_controller_impl.cc
|
| @@ -122,6 +122,11 @@ void MediaTimelineControllerImpl::SetTimelineTransform(
|
| int64_t new_reference_time;
|
| int64_t new_subject_time;
|
|
|
| + if (subject_time != kUnspecifiedTime) {
|
| + new_subject_time = subject_time;
|
| + end_of_stream_ = false;
|
| + }
|
| +
|
| if (effective_subject_time != kUnspecifiedTime) {
|
| // Infer new_reference_time from effective_subject_time.
|
| new_reference_time =
|
| @@ -130,8 +135,6 @@ void MediaTimelineControllerImpl::SetTimelineTransform(
|
| // Figure out what the subject_time will be after this transition.
|
| if (subject_time == kUnspecifiedTime) {
|
| new_subject_time = effective_subject_time;
|
| - } else {
|
| - new_subject_time = subject_time;
|
| }
|
| } else {
|
| if (effective_reference_time == kUnspecifiedTime) {
|
| @@ -145,8 +148,6 @@ void MediaTimelineControllerImpl::SetTimelineTransform(
|
| // Figure out what the subject_time will be after this transition.
|
| if (subject_time == kUnspecifiedTime) {
|
| new_subject_time = current_timeline_function_(effective_reference_time);
|
| - } else {
|
| - new_subject_time = subject_time;
|
| }
|
| }
|
|
|
| @@ -172,6 +173,7 @@ void MediaTimelineControllerImpl::SetTimelineTransform(
|
|
|
| // Initiate the transition for each site.
|
| for (const std::unique_ptr<SiteState>& site_state : site_states_) {
|
| + site_state->end_of_stream_ = false;
|
| site_state->consumer_->SetTimelineTransform(
|
| subject_time, reference_delta, subject_delta, effective_reference_time,
|
| effective_subject_time, transition->NewCallback());
|
|
|