Index: cc/trees/proxy_impl.cc |
diff --git a/cc/trees/proxy_impl.cc b/cc/trees/proxy_impl.cc |
index 39040a4a9f7ab5528fdf64406211dc6d94b7587b..9127c2f662c1e3b90ce732abe6621ad8ec184b9d 100644 |
--- a/cc/trees/proxy_impl.cc |
+++ b/cc/trees/proxy_impl.cc |
@@ -122,10 +122,13 @@ void ProxyImpl::UpdateBrowserControlsStateOnImpl( |
} |
void ProxyImpl::InitializeCompositorFrameSinkOnImpl( |
- CompositorFrameSink* compositor_frame_sink) { |
+ CompositorFrameSink* compositor_frame_sink, |
+ base::WeakPtr<ProxyMain> compositor_frame_sink_weak_ptr) { |
danakj
2017/04/05 16:08:49
If you want, and I think it'd be slightly simpler,
|
TRACE_EVENT0("cc", "ProxyImpl::InitializeCompositorFrameSinkOnImplThread"); |
DCHECK(IsImplThread()); |
+ compositor_frame_sink_weak_ptr_ = compositor_frame_sink_weak_ptr; |
+ |
LayerTreeHostImpl* host_impl = layer_tree_host_impl_.get(); |
bool success = host_impl->InitializeRenderer(compositor_frame_sink); |
MainThreadTaskRunner()->PostTask( |
@@ -281,7 +284,7 @@ void ProxyImpl::DidReceiveCompositorFrameAckOnImplThread() { |
scheduler_->DidReceiveCompositorFrameAck(); |
MainThreadTaskRunner()->PostTask( |
FROM_HERE, base::Bind(&ProxyMain::DidReceiveCompositorFrameAck, |
- proxy_main_weak_ptr_)); |
+ compositor_frame_sink_weak_ptr_)); |
} |
void ProxyImpl::OnCanDrawStateChanged(bool can_draw) { |