| Index: content/renderer/media/webmediaplayer_ms_compositor.cc
|
| diff --git a/content/renderer/media/webmediaplayer_ms_compositor.cc b/content/renderer/media/webmediaplayer_ms_compositor.cc
|
| index 1cd01e8377290c02e8ad4ff0d7447ff8741f8a8b..a95357b97bb202718fe22fc650e1406806ac70d6 100644
|
| --- a/content/renderer/media/webmediaplayer_ms_compositor.cc
|
| +++ b/content/renderer/media/webmediaplayer_ms_compositor.cc
|
| @@ -395,10 +395,19 @@ void WebMediaPlayerMSCompositor::Render(base::TimeTicks deadline_min,
|
| void WebMediaPlayerMSCompositor::SetCurrentFrame(
|
| const scoped_refptr<media::VideoFrame>& frame) {
|
| current_frame_lock_.AssertAcquired();
|
| +
|
| if (!current_frame_used_by_compositor_)
|
| ++dropped_frame_count_;
|
| current_frame_used_by_compositor_ = false;
|
| +
|
| + const bool size_changed =
|
| + !current_frame_ ||
|
| + current_frame_->natural_size() != frame->natural_size();
|
| current_frame_ = frame;
|
| + if (size_changed) {
|
| + main_message_loop_->PostTask(
|
| + FROM_HERE, base::Bind(&WebMediaPlayerMS::TriggerResize, player_));
|
| + }
|
| main_message_loop_->PostTask(
|
| FROM_HERE, base::Bind(&WebMediaPlayerMS::ResetCanvasCache, player_));
|
| }
|
|
|