| Index: services/ui/ws/gpu_compositor_frame_sink.cc
|
| diff --git a/services/ui/ws/gpu_compositor_frame_sink.cc b/services/ui/ws/gpu_compositor_frame_sink.cc
|
| index acf0b24cde2f427852dc276e13a83f981eba91e9..17ffc59a6842f9de6755454c221cb99fef5d6933 100644
|
| --- a/services/ui/ws/gpu_compositor_frame_sink.cc
|
| +++ b/services/ui/ws/gpu_compositor_frame_sink.cc
|
| @@ -52,7 +52,7 @@
|
| // SurfaceFactory's destructor will attempt to return resources which will
|
| // call back into here and access |client_| so we should destroy
|
| // |surface_factory_|'s resources early on.
|
| - surface_factory_.EvictSurface();
|
| + surface_factory_.DestroyAll();
|
| display_compositor_->manager()->UnregisterSurfaceFactoryClient(
|
| frame_sink_id_);
|
| display_compositor_->manager()->InvalidateFrameSinkId(frame_sink_id_);
|
| @@ -68,7 +68,10 @@
|
| // If the size of the CompostiorFrame has changed then destroy the existing
|
| // Surface and create a new one of the appropriate size.
|
| if (!local_frame_id_.is_valid() || frame_size != last_submitted_frame_size_) {
|
| + if (local_frame_id_.is_valid())
|
| + surface_factory_.Destroy(local_frame_id_);
|
| local_frame_id_ = surface_id_allocator_.GenerateId();
|
| + surface_factory_.Create(local_frame_id_);
|
| if (display_)
|
| display_->Resize(frame_size);
|
| }
|
|
|