| OLD | NEW |
| 1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 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 "base/files/file_path.h" | 5 #include "base/files/file_path.h" |
| 6 #include "base/metrics/field_trial.h" | 6 #include "base/metrics/field_trial.h" |
| 7 #include "base/path_service.h" | 7 #include "base/path_service.h" |
| 8 #include "base/strings/string_number_conversions.h" | 8 #include "base/strings/string_number_conversions.h" |
| 9 #include "base/win/scoped_handle.h" | 9 #include "base/win/scoped_handle.h" |
| 10 #include "base/win/win_util.h" | 10 #include "base/win/win_util.h" |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 58 *is_synchronous_launch = true; | 58 *is_synchronous_launch = true; |
| 59 if (delegate_->ShouldLaunchElevated()) { | 59 if (delegate_->ShouldLaunchElevated()) { |
| 60 // When establishing a Mojo connection, the pipe path has already been added | 60 // When establishing a Mojo connection, the pipe path has already been added |
| 61 // to the command line. | 61 // to the command line. |
| 62 base::LaunchOptions win_options; | 62 base::LaunchOptions win_options; |
| 63 win_options.start_hidden = true; | 63 win_options.start_hidden = true; |
| 64 ChildProcessLauncherHelper::Process process; | 64 ChildProcessLauncherHelper::Process process; |
| 65 process.process = base::LaunchElevatedProcess(*command_line(), win_options); | 65 process.process = base::LaunchElevatedProcess(*command_line(), win_options); |
| 66 return process; | 66 return process; |
| 67 } | 67 } |
| 68 base::HandlesToInheritVector handles; | 68 std::vector<HANDLE> handles; |
| 69 handles.push_back(mojo_client_handle().handle); | 69 handles.push_back(mojo_client_handle().handle); |
| 70 base::FieldTrialList::AppendFieldTrialHandleIfNeeded(&handles); | 70 base::FieldTrialList::AppendFieldTrialHandleIfNeeded(&handles); |
| 71 command_line()->AppendSwitchASCII( | 71 command_line()->AppendSwitchASCII( |
| 72 mojo::edk::PlatformChannelPair::kMojoPlatformChannelHandleSwitch, | 72 mojo::edk::PlatformChannelPair::kMojoPlatformChannelHandleSwitch, |
| 73 base::UintToString(base::win::HandleToUint32(handles[0]))); | 73 base::UintToString(base::win::HandleToUint32(handles[0]))); |
| 74 ChildProcessLauncherHelper::Process process; | 74 ChildProcessLauncherHelper::Process process; |
| 75 *launch_result = StartSandboxedProcess( | 75 *launch_result = StartSandboxedProcess( |
| 76 delegate_.get(), | 76 delegate_.get(), |
| 77 command_line(), | 77 command_line(), |
| 78 handles, | 78 handles, |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 122 catalog::RequiredFileMap required_files) { | 122 catalog::RequiredFileMap required_files) { |
| 123 // No file passing from the manifest on Windows yet. | 123 // No file passing from the manifest on Windows yet. |
| 124 DCHECK(required_files.empty()); | 124 DCHECK(required_files.empty()); |
| 125 } | 125 } |
| 126 | 126 |
| 127 // static | 127 // static |
| 128 void ChildProcessLauncherHelper::ResetRegisteredFilesForTesting() {} | 128 void ChildProcessLauncherHelper::ResetRegisteredFilesForTesting() {} |
| 129 | 129 |
| 130 } // namespace internal | 130 } // namespace internal |
| 131 } // namespace content | 131 } // namespace content |
| OLD | NEW |