| Index: services/ui/gpu/gpu_main.cc
|
| diff --git a/services/ui/gpu/gpu_main.cc b/services/ui/gpu/gpu_main.cc
|
| index bc04ac51508ac80ac9e306670c36d5c1218b9323..3e4015a3d26bbd92dfe7fa699d08f24dfe962bfd 100644
|
| --- a/services/ui/gpu/gpu_main.cc
|
| +++ b/services/ui/gpu/gpu_main.cc
|
| @@ -71,6 +71,7 @@ GpuMain::GpuMain(mojom::GpuMainRequest request)
|
| thread_options.priority = base::ThreadPriority::DISPLAY;
|
| #endif
|
| CHECK(gpu_thread_.StartWithOptions(thread_options));
|
| + gpu_thread_task_runner_ = gpu_thread_.task_runner();
|
|
|
| // TODO(sad): We do not need the IO thread once gpu has a separate process. It
|
| // should be possible to use |main_task_runner_| for doing IO tasks.
|
| @@ -85,11 +86,12 @@ GpuMain::GpuMain(mojom::GpuMainRequest request)
|
|
|
| // Start the compositor thread.
|
| compositor_thread_.Start();
|
| + compositor_thread_task_runner_ = compositor_thread_.task_runner();
|
| }
|
|
|
| GpuMain::~GpuMain() {
|
| // Unretained() is OK here since the thread/task runner is owned by |this|.
|
| - compositor_thread_.task_runner()->PostTask(
|
| + compositor_thread_task_runner_->PostTask(
|
| FROM_HERE,
|
| base::Bind(&GpuMain::TearDownOnCompositorThread, base::Unretained(this)));
|
|
|
| @@ -98,7 +100,7 @@ GpuMain::~GpuMain() {
|
| // thread to avoid deadlock.
|
| compositor_thread_.Stop();
|
|
|
| - gpu_thread_.task_runner()->PostTask(
|
| + gpu_thread_task_runner_->PostTask(
|
| FROM_HERE,
|
| base::Bind(&GpuMain::TearDownOnGpuThread, base::Unretained(this)));
|
| gpu_thread_.Stop();
|
| @@ -108,10 +110,10 @@ GpuMain::~GpuMain() {
|
| void GpuMain::OnStart() {
|
| // |this| will outlive the gpu thread and so it's safe to use
|
| // base::Unretained here.
|
| - gpu_thread_.task_runner()->PostTask(
|
| + gpu_thread_task_runner_->PostTask(
|
| FROM_HERE,
|
| base::Bind(&GpuMain::InitOnGpuThread, base::Unretained(this),
|
| - io_thread_.task_runner(), compositor_thread_.task_runner()));
|
| + io_thread_.task_runner(), compositor_thread_task_runner_));
|
| }
|
|
|
| void GpuMain::CreateGpuService(mojom::GpuServiceRequest request,
|
| @@ -119,7 +121,7 @@ void GpuMain::CreateGpuService(mojom::GpuServiceRequest request,
|
| const gpu::GpuPreferences& preferences) {
|
| // |this| will outlive the gpu thread and so it's safe to use
|
| // base::Unretained here.
|
| - gpu_thread_.task_runner()->PostTask(
|
| + gpu_thread_task_runner_->PostTask(
|
| FROM_HERE,
|
| base::Bind(&GpuMain::CreateGpuServiceOnGpuThread, base::Unretained(this),
|
| base::Passed(std::move(request)),
|
| @@ -163,7 +165,7 @@ void GpuMain::CreateDisplayCompositorInternal(
|
| cc::mojom::DisplayCompositorClientPtrInfo client_info) {
|
| DCHECK(!gpu_command_service_);
|
| gpu_command_service_ = new gpu::GpuInProcessThreadService(
|
| - gpu_thread_.task_runner(), gpu_service_->sync_point_manager(),
|
| + gpu_thread_task_runner_, gpu_service_->sync_point_manager(),
|
| gpu_service_->mailbox_manager(), gpu_service_->share_group());
|
|
|
| // |gpu_memory_buffer_factory_| is null in tests.
|
| @@ -174,19 +176,19 @@ void GpuMain::CreateDisplayCompositorInternal(
|
| mojom::GpuServicePtr gpu_service;
|
| mojom::GpuServiceRequest gpu_service_request(&gpu_service);
|
|
|
| - if (gpu_thread_.task_runner()->BelongsToCurrentThread()) {
|
| + if (gpu_thread_task_runner_->BelongsToCurrentThread()) {
|
| // If the DisplayCompositor creation was delayed because GpuService
|
| // had not been created yet, then this is called, in gpu thread, right after
|
| // GpuService is created.
|
| BindGpuInternalOnGpuThread(std::move(gpu_service_request));
|
| } else {
|
| - gpu_thread_.task_runner()->PostTask(
|
| + gpu_thread_task_runner_->PostTask(
|
| FROM_HERE,
|
| base::Bind(&GpuMain::BindGpuInternalOnGpuThread, base::Unretained(this),
|
| base::Passed(std::move(gpu_service_request))));
|
| }
|
|
|
| - compositor_thread_.task_runner()->PostTask(
|
| + compositor_thread_task_runner_->PostTask(
|
| FROM_HERE, base::Bind(&GpuMain::CreateDisplayCompositorOnCompositorThread,
|
| base::Unretained(this), image_factory,
|
| base::Passed(gpu_service.PassInterface()),
|
|
|