Index: content/browser/android/in_process/synchronous_compositor_external_begin_frame_source.cc |
diff --git a/content/browser/android/in_process/synchronous_compositor_external_begin_frame_source.cc b/content/browser/android/in_process/synchronous_compositor_external_begin_frame_source.cc |
index 17f1d1a8d2c932e75eb852b5e586294f2d434a2d..fd9513cb89de139d075ee8fe9998eae6a39bde08 100644 |
--- a/content/browser/android/in_process/synchronous_compositor_external_begin_frame_source.cc |
+++ b/content/browser/android/in_process/synchronous_compositor_external_begin_frame_source.cc |
@@ -38,7 +38,15 @@ void SynchronousCompositorExternalBeginFrameSource::BeginFrame( |
void SynchronousCompositorExternalBeginFrameSource::SetCompositor( |
SynchronousCompositorImpl* compositor) { |
DCHECK(CalledOnValidThread()); |
+ if (compositor_ == compositor) return; |
+ |
+ if (compositor_) |
+ compositor_->OnNeedsBeginFramesChange(false); |
+ |
compositor_ = compositor; |
+ |
+ if (compositor_) |
+ compositor_->OnNeedsBeginFramesChange(needs_begin_frames_); |
} |
void SynchronousCompositorExternalBeginFrameSource::OnNeedsBeginFramesChange( |