OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/browser/utility_process_host_impl.h" | 5 #include "content/browser/utility_process_host_impl.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/base_switches.h" | 9 #include "base/base_switches.h" |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
(...skipping 319 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
330 cmd_line->AppendSwitchPath(switches::kUtilityProcessAllowedDir, | 330 cmd_line->AppendSwitchPath(switches::kUtilityProcessAllowedDir, |
331 exposed_dir_); | 331 exposed_dir_); |
332 } | 332 } |
333 | 333 |
334 #if defined(OS_WIN) | 334 #if defined(OS_WIN) |
335 // Let the utility process know if it is intended to be elevated. | 335 // Let the utility process know if it is intended to be elevated. |
336 if (run_elevated_) | 336 if (run_elevated_) |
337 cmd_line->AppendSwitch(switches::kUtilityProcessRunningElevated); | 337 cmd_line->AppendSwitch(switches::kUtilityProcessRunningElevated); |
338 #endif | 338 #endif |
339 | 339 |
| 340 BrowserChildProcessHostImpl::CopyFeatureAndFieldTrialFlags(cmd_line.get()); |
| 341 |
340 process_->Launch(base::MakeUnique<UtilitySandboxedProcessLauncherDelegate>( | 342 process_->Launch(base::MakeUnique<UtilitySandboxedProcessLauncherDelegate>( |
341 exposed_dir_, run_elevated_, no_sandbox_, env_), | 343 exposed_dir_, run_elevated_, no_sandbox_, env_), |
342 std::move(cmd_line), true); | 344 std::move(cmd_line), true); |
343 } | 345 } |
344 | 346 |
345 return true; | 347 return true; |
346 } | 348 } |
347 | 349 |
348 bool UtilityProcessHostImpl::OnMessageReceived(const IPC::Message& message) { | 350 bool UtilityProcessHostImpl::OnMessageReceived(const IPC::Message& message) { |
349 if (!client_.get()) | 351 if (!client_.get()) |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
393 base::WeakPtr<UtilityProcessHostImpl> host, | 395 base::WeakPtr<UtilityProcessHostImpl> host, |
394 int error_code) { | 396 int error_code) { |
395 if (!host) | 397 if (!host) |
396 return; | 398 return; |
397 | 399 |
398 host->OnProcessLaunchFailed(error_code); | 400 host->OnProcessLaunchFailed(error_code); |
399 delete host.get(); | 401 delete host.get(); |
400 } | 402 } |
401 | 403 |
402 } // namespace content | 404 } // namespace content |
OLD | NEW |