| 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 16e68eff5fb313fc3ff96773887ced62efabbc4d..d22a69bd9ea637ea8c7685b411c74b52c07205c9 100644
|
| --- a/content/browser/gpu/gpu_process_host.cc
|
| +++ b/content/browser/gpu/gpu_process_host.cc
|
| @@ -416,6 +416,10 @@ void GpuProcessHost::RegisterGpuMainThreadFactory(
|
| g_gpu_main_thread_factory = create;
|
| }
|
|
|
| +shell::InterfaceProvider* GpuProcessHost::GetRemoteInterfaces() {
|
| + return process_->child_connection()->GetRemoteInterfaces();
|
| +}
|
| +
|
| // static
|
| GpuProcessHost* GpuProcessHost::FromID(int host_id) {
|
| DCHECK_CURRENTLY_ON(BrowserThread::IO);
|
| @@ -437,8 +441,7 @@ GpuProcessHost::GpuProcessHost(int host_id, GpuProcessKind kind)
|
| kind_(kind),
|
| process_launched_(false),
|
| initialized_(false),
|
| - uma_memory_stats_received_(false),
|
| - child_token_(mojo::edk::GenerateRandomToken()) {
|
| + uma_memory_stats_received_(false) {
|
| if (base::CommandLine::ForCurrentProcess()->HasSwitch(
|
| switches::kSingleProcess) ||
|
| base::CommandLine::ForCurrentProcess()->HasSwitch(
|
| @@ -462,8 +465,8 @@ GpuProcessHost::GpuProcessHost(int host_id, GpuProcessKind kind)
|
| FROM_HERE,
|
| base::Bind(base::IgnoreResult(&GpuProcessHostUIShim::Create), host_id));
|
|
|
| - process_.reset(new BrowserChildProcessHostImpl(PROCESS_TYPE_GPU, this,
|
| - child_token_));
|
| + process_.reset(new BrowserChildProcessHostImpl(
|
| + PROCESS_TYPE_GPU, this, kGpuMojoApplicationName));
|
| }
|
|
|
| GpuProcessHost::~GpuProcessHost() {
|
| @@ -577,16 +580,7 @@ bool GpuProcessHost::Init() {
|
| base::MakeUnique<ConnectionFilterImpl>(this));
|
| }
|
|
|
| - const std::string mojo_channel_token =
|
| - process_->GetHost()->CreateChannelMojo(child_token_);
|
| - if (mojo_channel_token.empty())
|
| - return false;
|
| -
|
| - DCHECK(!mojo_child_connection_);
|
| - mojo_child_connection_.reset(new MojoChildConnection(
|
| - kGpuMojoApplicationName, "", child_token_,
|
| - MojoShellContext::GetConnectorForIOThread(),
|
| - BrowserThread::GetTaskRunnerForThread(BrowserThread::IO)));
|
| + process_->GetHost()->CreateChannelMojo();
|
|
|
| gpu::GpuPreferences gpu_preferences = GetGpuPreferencesFromCommandLine();
|
| if (in_process_) {
|
| @@ -595,7 +589,8 @@ bool GpuProcessHost::Init() {
|
| in_process_gpu_thread_.reset(g_gpu_main_thread_factory(
|
| InProcessChildThreadParams(
|
| std::string(), base::ThreadTaskRunnerHandle::Get(),
|
| - mojo_channel_token, mojo_child_connection_->service_token()),
|
| + std::string(),
|
| + process_->child_connection()->service_token()),
|
| gpu_preferences));
|
| base::Thread::Options options;
|
| #if defined(OS_WIN)
|
| @@ -608,7 +603,7 @@ bool GpuProcessHost::Init() {
|
| in_process_gpu_thread_->StartWithOptions(options);
|
|
|
| OnProcessLaunched(); // Fake a callback that the process is ready.
|
| - } else if (!LaunchGpuProcess(mojo_channel_token, &gpu_preferences)) {
|
| + } else if (!LaunchGpuProcess(&gpu_preferences)) {
|
| return false;
|
| }
|
|
|
| @@ -956,10 +951,6 @@ void GpuProcessHost::OnProcessCrashed(int exit_code) {
|
| process_->GetTerminationStatus(true /* known_dead */, NULL));
|
| }
|
|
|
| -shell::InterfaceProvider* GpuProcessHost::GetRemoteInterfaces() {
|
| - return mojo_child_connection_->GetRemoteInterfaces();
|
| -}
|
| -
|
| GpuProcessHost::GpuProcessKind GpuProcessHost::kind() {
|
| return kind_;
|
| }
|
| @@ -977,8 +968,7 @@ void GpuProcessHost::StopGpuProcess() {
|
| Send(new GpuMsg_Finalize());
|
| }
|
|
|
| -bool GpuProcessHost::LaunchGpuProcess(const std::string& mojo_channel_token,
|
| - gpu::GpuPreferences* gpu_preferences) {
|
| +bool GpuProcessHost::LaunchGpuProcess(gpu::GpuPreferences* gpu_preferences) {
|
| if (!(gpu_enabled_ &&
|
| GpuDataManagerImpl::GetInstance()->ShouldUseSwiftShader()) &&
|
| !hardware_gpu_enabled_) {
|
| @@ -1013,9 +1003,6 @@ bool GpuProcessHost::LaunchGpuProcess(const std::string& mojo_channel_token,
|
| base::CommandLine* cmd_line = new base::CommandLine(exe_path);
|
| #endif
|
| cmd_line->AppendSwitchASCII(switches::kProcessType, switches::kGpuProcess);
|
| - cmd_line->AppendSwitchASCII(switches::kMojoChannelToken, mojo_channel_token);
|
| - cmd_line->AppendSwitchASCII(switches::kMojoApplicationChannelToken,
|
| - mojo_child_connection_->service_token());
|
| BrowserChildProcessHostImpl::CopyFeatureAndFieldTrialFlags(cmd_line);
|
|
|
| #if defined(OS_WIN)
|
|
|