Chromium Code Reviews| Index: content/browser/gpu/gpu_process_host.cc |
| diff --git a/content/browser/gpu/gpu_process_host.cc b/content/browser/gpu/gpu_process_host.cc |
| index 8329c4ee60fa2dc1b97b2a2c2d55002cdf2e28cb..9f9ef11df98387a0ebbf137ce00829df85c8be85 100644 |
| --- a/content/browser/gpu/gpu_process_host.cc |
| +++ b/content/browser/gpu/gpu_process_host.cc |
| @@ -82,6 +82,8 @@ |
| #endif |
| #if defined(USE_OZONE) |
| +#include "ui/ozone/public/gpu_platform_support_host.h" |
| +#include "ui/ozone/public/ozone_platform.h" |
| #include "ui/ozone/public/ozone_switches.h" |
| #endif |
| @@ -185,6 +187,17 @@ void SendGpuProcessMessage(GpuProcessHost::GpuProcessKind kind, |
| } |
| } |
| +#if defined(USE_OZONE) |
| +void SendGpuProcessMessageByHostId(int host_id, IPC::Message* message) { |
| + GpuProcessHost* host = GpuProcessHost::FromID(host_id); |
| + if (host) { |
| + host->Send(message); |
| + } else { |
| + delete message; |
| + } |
| +} |
| +#endif |
| + |
| // NOTE: changes to this class need to be reviewed by the security team. |
| class GpuSandboxedProcessLauncherDelegate |
| : public SandboxedProcessLauncherDelegate { |
| @@ -455,6 +468,14 @@ GpuProcessHost::GpuProcessHost(int host_id, GpuProcessKind kind) |
| g_gpu_process_hosts[kind] = this; |
| +#if defined(USE_OZONE) |
| + ui::OzonePlatform::GetInstance() |
| + ->GetGpuPlatformSupportHost() |
| + ->OnGpuProcessLaunched( |
|
piman
2016/10/31 23:41:49
The GPU process hasn't been launched yet, though..
hshi1
2016/11/01 01:00:48
Done.
|
| + host_id, BrowserThread::GetTaskRunnerForThread(BrowserThread::IO), |
| + base::Bind(&SendGpuProcessMessageByHostId, host_id)); |
| +#endif |
| + |
| // Post a task to create the corresponding GpuProcessHostUIShim. The |
| // GpuProcessHostUIShim will be destroyed if either the browser exits, |
| // in which case it calls GpuProcessHostUIShim::DestroyAll, or the |