Index: cc/trees/proxy_impl.cc |
diff --git a/cc/trees/proxy_impl.cc b/cc/trees/proxy_impl.cc |
index 1235c4b512cefe8fcca12adcda63751f3f63121d..48d19029a8005bfd2aae3459656ed4739567b4b7 100644 |
--- a/cc/trees/proxy_impl.cc |
+++ b/cc/trees/proxy_impl.cc |
@@ -126,10 +126,13 @@ void ProxyImpl::UpdateBrowserControlsStateOnImpl( |
} |
void ProxyImpl::InitializeCompositorFrameSinkOnImpl( |
- CompositorFrameSink* compositor_frame_sink) { |
+ CompositorFrameSink* compositor_frame_sink, |
+ base::WeakPtr<ProxyMain> proxy_main_frame_sink_bound_weak_ptr) { |
TRACE_EVENT0("cc", "ProxyImpl::InitializeCompositorFrameSinkOnImplThread"); |
DCHECK(IsImplThread()); |
+ proxy_main_frame_sink_bound_weak_ptr_ = proxy_main_frame_sink_bound_weak_ptr; |
+ |
LayerTreeHostImpl* host_impl = layer_tree_host_impl_.get(); |
bool success = host_impl->InitializeRenderer(compositor_frame_sink); |
MainThreadTaskRunner()->PostTask( |
@@ -314,7 +317,7 @@ void ProxyImpl::DidReceiveCompositorFrameAckOnImplThread() { |
scheduler_->DidReceiveCompositorFrameAck(); |
MainThreadTaskRunner()->PostTask( |
FROM_HERE, base::BindOnce(&ProxyMain::DidReceiveCompositorFrameAck, |
- proxy_main_weak_ptr_)); |
+ proxy_main_frame_sink_bound_weak_ptr_)); |
} |
void ProxyImpl::OnCanDrawStateChanged(bool can_draw) { |