Chromium Code Reviews| Index: content/renderer/render_thread_impl.cc |
| diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc |
| index 7686bdf32144e79a0c091ceb4492a9464ebdc884..30154cea9842c8ad2c0b558cbc468cf3d881f2e2 100644 |
| --- a/content/renderer/render_thread_impl.cc |
| +++ b/content/renderer/render_thread_impl.cc |
| @@ -648,13 +648,19 @@ void RenderThreadImpl::Init( |
| // Register this object as the main thread. |
| ChildProcess::current()->set_main_thread(this); |
| + bool should_create_gpu_memory_buffer_manager = true; |
| #if defined(USE_AURA) |
| if (IsRunningInMash()) { |
| gpu_service_ = |
| ui::GpuService::Create(GetMojoShellConnection()->GetConnector(), |
| ChildProcess::current()->io_task_runner()); |
| + should_create_gpu_memory_buffer_manager = false; |
| } |
| #endif |
| + if (should_create_gpu_memory_buffer_manager) { |
|
reveman
2016/10/03 21:47:44
nit: I think the overhead of creating this instanc
sadrul
2016/10/04 01:05:31
Done.
|
| + gpu_memory_buffer_manager_ = |
| + base::MakeUnique<ChildGpuMemoryBufferManager>(thread_safe_sender()); |
| + } |
| InitializeWebKit(resource_task_queue); |
| @@ -1638,7 +1644,10 @@ gpu::GpuMemoryBufferManager* RenderThreadImpl::GetGpuMemoryBufferManager() { |
| if (gpu_service_) |
| return gpu_service_->gpu_memory_buffer_manager(); |
| #endif |
| - return gpu_memory_buffer_manager(); |
| + if (!gpu_memory_buffer_manager_) { |
|
reveman
2016/10/03 21:47:44
remove this?
sadrul
2016/10/04 01:05:31
Sorry, I was sloppy. Removed.
|
| + } |
| + |
| + return gpu_memory_buffer_manager_.get(); |
| } |
| blink::scheduler::RendererScheduler* RenderThreadImpl::GetRendererScheduler() { |
| @@ -1857,7 +1866,7 @@ scoped_refptr<gpu::GpuChannelHost> RenderThreadImpl::EstablishGpuChannelSync() { |
| gpu_channel_ = |
| gpu::GpuChannelHost::Create(this, client_id, gpu_info, channel_handle, |
| ChildProcess::current()->GetShutDownEvent(), |
| - gpu_memory_buffer_manager()); |
| + GetGpuMemoryBufferManager()); |
| } else { |
| #if defined(USE_AURA) |
| gpu_channel_ = gpu_service_->EstablishGpuChannelSync(); |