Index: media/base/clock.cc |
diff --git a/media/base/clock.cc b/media/base/clock.cc |
index 06f1b5686ccea50fb2de7e1b98849d636b520ba8..2432f91e47bf75418de23a12faffde85ccf38215 100644 |
--- a/media/base/clock.cc |
+++ b/media/base/clock.cc |
@@ -80,9 +80,12 @@ void Clock::SetMaxTime(base::TimeDelta max_time) { |
} |
void Clock::SetDuration(base::TimeDelta duration) { |
- DCHECK(duration_ == kNoTimestamp() || duration_ == kInfiniteDuration()); |
DCHECK(duration > base::TimeDelta()); |
duration_ = duration; |
+ |
+ media_time_ = ClampToValidTimeRange(media_time_); |
+ if (max_time_ != kNoTimestamp()) |
+ max_time_ = ClampToValidTimeRange(max_time_); |
} |
base::TimeDelta Clock::ElapsedViaProvidedTime(const base::Time& time) const { |