| Index: content/common/gpu/gpu_channel_manager.cc
|
| diff --git a/content/common/gpu/gpu_channel_manager.cc b/content/common/gpu/gpu_channel_manager.cc
|
| index a073e20151edce4dc033a6d9e54bf3c0196b214a..57fbcd9b35306d3126969229237f82d0258954e1 100644
|
| --- a/content/common/gpu/gpu_channel_manager.cc
|
| +++ b/content/common/gpu/gpu_channel_manager.cc
|
| @@ -103,10 +103,7 @@ GpuChannelManager::GpuChannelManager(MessageRouter* router,
|
|
|
| GpuChannelManager::~GpuChannelManager() {
|
| gpu_channels_.clear();
|
| - if (default_offscreen_surface_.get()) {
|
| - default_offscreen_surface_->Destroy();
|
| - default_offscreen_surface_ = NULL;
|
| - }
|
| + OnDeleteDefaultOffscreenSurface();
|
| }
|
|
|
| gpu::gles2::ProgramCache* GpuChannelManager::program_cache() {
|
| @@ -162,6 +159,8 @@ bool GpuChannelManager::OnMessageReceived(const IPC::Message& msg) {
|
| OnCreateViewCommandBuffer)
|
| IPC_MESSAGE_HANDLER(GpuMsg_DestroyGpuMemoryBuffer, OnDestroyGpuMemoryBuffer)
|
| IPC_MESSAGE_HANDLER(GpuMsg_LoadedShader, OnLoadedShader)
|
| + IPC_MESSAGE_HANDLER(GpuMsg_DeleteDefaultOffscreenSurface,
|
| + OnDeleteDefaultOffscreenSurface)
|
| IPC_MESSAGE_UNHANDLED(handled = false)
|
| IPC_END_MESSAGE_MAP()
|
| return handled;
|
| @@ -323,4 +322,11 @@ gfx::GLSurface* GpuChannelManager::GetDefaultOffscreenSurface() {
|
| return default_offscreen_surface_.get();
|
| }
|
|
|
| +void GpuChannelManager::OnDeleteDefaultOffscreenSurface() {
|
| + if (default_offscreen_surface_.get()) {
|
| + default_offscreen_surface_->Destroy();
|
| + default_offscreen_surface_ = NULL;
|
| + }
|
| +}
|
| +
|
| } // namespace content
|
|
|