| Index: webkit/media/webmediaplayer_impl.cc
|
| diff --git a/webkit/media/webmediaplayer_impl.cc b/webkit/media/webmediaplayer_impl.cc
|
| index e2d01e3f3a6f21968929179630ad2d36fbcfce55..a246945cd4c04d42d25ec2584757bfb25bcd1f04 100644
|
| --- a/webkit/media/webmediaplayer_impl.cc
|
| +++ b/webkit/media/webmediaplayer_impl.cc
|
| @@ -498,8 +498,12 @@ float WebMediaPlayerImpl::duration() const {
|
| DCHECK_EQ(main_loop_, MessageLoop::current());
|
|
|
| base::TimeDelta duration = pipeline_->GetMediaDuration();
|
| - if (duration.InMicroseconds() == media::Limits::kMaxTimeInMicroseconds)
|
| +
|
| + // Return positive infinity if the resource is unbounded.
|
| + // http://www.whatwg.org/specs/web-apps/current-work/multipage/video.html#dom-media-duration
|
| + if (duration == media::kInfiniteDuration)
|
| return std::numeric_limits<float>::infinity();
|
| +
|
| return static_cast<float>(duration.InSecondsF());
|
| }
|
|
|
| @@ -588,10 +592,10 @@ void WebMediaPlayerImpl::paint(WebCanvas* canvas,
|
|
|
| // Make sure we don't create a huge canvas.
|
| // TODO(hclam): Respect the aspect ratio.
|
| - if (scaled_width > static_cast<int>(media::Limits::kMaxCanvas))
|
| - scaled_width = media::Limits::kMaxCanvas;
|
| - if (scaled_height > static_cast<int>(media::Limits::kMaxCanvas))
|
| - scaled_height = media::Limits::kMaxCanvas;
|
| + if (scaled_width > static_cast<int>(media::limits::kMaxCanvas))
|
| + scaled_width = media::limits::kMaxCanvas;
|
| + if (scaled_height > static_cast<int>(media::limits::kMaxCanvas))
|
| + scaled_height = media::limits::kMaxCanvas;
|
|
|
| // If there is no preexisting platform canvas, or if the size has
|
| // changed, recreate the canvas. This is to avoid recreating the bitmap
|
|
|