| Index: content/renderer/android/synchronous_compositor_output_surface.cc
|
| diff --git a/content/renderer/android/synchronous_compositor_output_surface.cc b/content/renderer/android/synchronous_compositor_output_surface.cc
|
| index cb41202d297b3d3d620b1d1745c280167cda0c5c..71de6b5af4425d0d1f1e8c3e538bdb12093efed9 100644
|
| --- a/content/renderer/android/synchronous_compositor_output_surface.cc
|
| +++ b/content/renderer/android/synchronous_compositor_output_surface.cc
|
| @@ -62,6 +62,7 @@ SynchronousCompositorOutputSurface::SynchronousCompositorOutputSurface(
|
| const scoped_refptr<cc::ContextProvider>& context_provider,
|
| const scoped_refptr<cc::ContextProvider>& worker_context_provider,
|
| int routing_id,
|
| + uint32_t output_surface_id,
|
| SynchronousCompositorRegistry* registry,
|
| scoped_refptr<FrameSwapMessageQueue> frame_swap_message_queue)
|
| : cc::OutputSurface(
|
| @@ -69,6 +70,7 @@ SynchronousCompositorOutputSurface::SynchronousCompositorOutputSurface(
|
| worker_context_provider,
|
| scoped_ptr<cc::SoftwareOutputDevice>(new SoftwareDevice(this))),
|
| routing_id_(routing_id),
|
| + output_surface_id_(output_surface_id),
|
| registry_(registry),
|
| registered_(false),
|
| sync_client_(nullptr),
|
| @@ -127,7 +129,7 @@ void SynchronousCompositorOutputSurface::SwapBuffers(
|
| cc::CompositorFrame* frame) {
|
| DCHECK(CalledOnValidThread());
|
| DCHECK(sync_client_);
|
| - sync_client_->SwapBuffers(frame);
|
| + sync_client_->SwapBuffers(output_surface_id_, frame);
|
| client_->DidSwapBuffers();
|
| did_swap_ = true;
|
| }
|
| @@ -191,8 +193,10 @@ void SynchronousCompositorOutputSurface::InvokeComposite(
|
| }
|
|
|
| void SynchronousCompositorOutputSurface::ReturnResources(
|
| + uint32_t output_surface_id,
|
| const cc::CompositorFrameAck& frame_ack) {
|
| - ReclaimResources(&frame_ack);
|
| + if (output_surface_id_ == output_surface_id)
|
| + ReclaimResources(&frame_ack);
|
| }
|
|
|
| void SynchronousCompositorOutputSurface::SetMemoryPolicy(size_t bytes_limit) {
|
|
|