Index: gpu/command_buffer/service/in_process_command_buffer.cc |
diff --git a/gpu/command_buffer/service/in_process_command_buffer.cc b/gpu/command_buffer/service/in_process_command_buffer.cc |
index 24628f5b12d784e9b81508c6c2c603b09087cb79..692fb8e38a8ca88b43c31eb43f53c9779e5a793e 100644 |
--- a/gpu/command_buffer/service/in_process_command_buffer.cc |
+++ b/gpu/command_buffer/service/in_process_command_buffer.cc |
@@ -221,21 +221,6 @@ |
} |
} |
-scoped_refptr<InProcessCommandBuffer::Service> GetInitialService( |
- const scoped_refptr<InProcessCommandBuffer::Service>& service) { |
- if (service) |
- return service; |
- |
- // Call base::ThreadTaskRunnerHandle::IsSet() to ensure that it is |
- // instantiated before we create the GPU thread, otherwise shutdown order will |
- // delete the ThreadTaskRunnerHandle before the GPU thread's message loop, |
- // and when the message loop is shutdown, it will recreate |
- // ThreadTaskRunnerHandle, which will re-add a new task to the, AtExitManager, |
- // which causes a deadlock because it's already locked. |
- base::ThreadTaskRunnerHandle::IsSet(); |
- return g_default_service.Get().gpu_thread; |
-} |
- |
} // anonyous namespace |
InProcessCommandBuffer::Service::Service() {} |
@@ -286,7 +271,7 @@ |
last_put_offset_(-1), |
gpu_memory_buffer_manager_(nullptr), |
flush_event_(false, false), |
- service_(GetInitialService(service)), |
+ service_(service.get() ? service : g_default_service.Get().gpu_thread), |
gpu_thread_weak_ptr_factory_(this) { |
DCHECK(service_.get()); |
next_image_id_.GetNext(); |