| Index: cc/layers/video_frame_provider_client_impl.cc
|
| diff --git a/cc/layers/video_frame_provider_client_impl.cc b/cc/layers/video_frame_provider_client_impl.cc
|
| index 751d32f83b29ee471b68dc2ba897464837f79fb0..35822333beb8a9966b6c58e3fe660d93626cc9b4 100644
|
| --- a/cc/layers/video_frame_provider_client_impl.cc
|
| +++ b/cc/layers/video_frame_provider_client_impl.cc
|
| @@ -56,6 +56,7 @@ void VideoFrameProviderClientImpl::SetActiveVideoLayer(
|
|
|
| void VideoFrameProviderClientImpl::Stop() {
|
| DCHECK(thread_checker_.CalledOnValidThread());
|
| + active_video_layer_ = nullptr;
|
| // It's called when the main thread is blocked, so lock isn't needed.
|
| if (provider_) {
|
| provider_->SetVideoFrameProviderClient(nullptr);
|
| @@ -63,7 +64,6 @@ void VideoFrameProviderClientImpl::Stop() {
|
| }
|
| if (rendering_)
|
| StopRendering();
|
| - active_video_layer_ = nullptr;
|
| stopped_ = true;
|
| }
|
|
|
| @@ -127,6 +127,8 @@ void VideoFrameProviderClientImpl::StopRendering() {
|
| DCHECK(!stopped_);
|
| client_->RemoveVideoFrameController(this);
|
| rendering_ = false;
|
| + if (active_video_layer_)
|
| + active_video_layer_->SetNeedsRedraw();
|
| }
|
|
|
| void VideoFrameProviderClientImpl::DidReceiveFrame() {
|
|
|