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/browser_child_process_host_impl.h" | 5 #include "content/browser/browser_child_process_host_impl.h" |
6 | 6 |
7 #include "base/base_switches.h" | 7 #include "base/base_switches.h" |
8 #include "base/bind.h" | 8 #include "base/bind.h" |
9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
10 #include "base/debug/alias.h" | 10 #include "base/debug/alias.h" |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
42 #include "content/public/browser/content_browser_client.h" | 42 #include "content/public/browser/content_browser_client.h" |
43 #include "content/public/common/connection_filter.h" | 43 #include "content/public/common/connection_filter.h" |
44 #include "content/public/common/content_features.h" | 44 #include "content/public/common/content_features.h" |
45 #include "content/public/common/content_switches.h" | 45 #include "content/public/common/content_switches.h" |
46 #include "content/public/common/mojo_channel_switches.h" | 46 #include "content/public/common/mojo_channel_switches.h" |
47 #include "content/public/common/process_type.h" | 47 #include "content/public/common/process_type.h" |
48 #include "content/public/common/result_codes.h" | 48 #include "content/public/common/result_codes.h" |
49 #include "content/public/common/sandboxed_process_launcher_delegate.h" | 49 #include "content/public/common/sandboxed_process_launcher_delegate.h" |
50 #include "content/public/common/service_manager_connection.h" | 50 #include "content/public/common/service_manager_connection.h" |
51 #include "mojo/edk/embedder/embedder.h" | 51 #include "mojo/edk/embedder/embedder.h" |
| 52 #include "services/service_manager/embedder/switches.h" |
52 | 53 |
53 #if defined(OS_MACOSX) | 54 #if defined(OS_MACOSX) |
54 #include "content/browser/mach_broker_mac.h" | 55 #include "content/browser/mach_broker_mac.h" |
55 #endif | 56 #endif |
56 | 57 |
57 namespace content { | 58 namespace content { |
58 namespace { | 59 namespace { |
59 | 60 |
60 static base::LazyInstance< | 61 static base::LazyInstance< |
61 BrowserChildProcessHostImpl::BrowserChildProcessList>::DestructorAtExit | 62 BrowserChildProcessHostImpl::BrowserChildProcessList>::DestructorAtExit |
(...skipping 150 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
212 std::unique_ptr<base::CommandLine> cmd_line, | 213 std::unique_ptr<base::CommandLine> cmd_line, |
213 bool terminate_on_shutdown) { | 214 bool terminate_on_shutdown) { |
214 DCHECK_CURRENTLY_ON(BrowserThread::IO); | 215 DCHECK_CURRENTLY_ON(BrowserThread::IO); |
215 | 216 |
216 GetContentClient()->browser()->AppendExtraCommandLineSwitches(cmd_line.get(), | 217 GetContentClient()->browser()->AppendExtraCommandLineSwitches(cmd_line.get(), |
217 data_.id); | 218 data_.id); |
218 | 219 |
219 const base::CommandLine& browser_command_line = | 220 const base::CommandLine& browser_command_line = |
220 *base::CommandLine::ForCurrentProcess(); | 221 *base::CommandLine::ForCurrentProcess(); |
221 static const char* const kForwardSwitches[] = { | 222 static const char* const kForwardSwitches[] = { |
222 switches::kDisableLogging, | 223 service_manager::switches::kDisableInProcessStackTraces, |
223 switches::kEnableLogging, | 224 switches::kDisableLogging, |
224 switches::kIPCConnectionTimeout, | 225 switches::kEnableLogging, |
225 switches::kLoggingLevel, | 226 switches::kIPCConnectionTimeout, |
226 switches::kTraceToConsole, | 227 switches::kLoggingLevel, |
227 switches::kV, | 228 switches::kTraceToConsole, |
228 switches::kVModule, | 229 switches::kV, |
| 230 switches::kVModule, |
229 }; | 231 }; |
230 cmd_line->CopySwitchesFrom(browser_command_line, kForwardSwitches, | 232 cmd_line->CopySwitchesFrom(browser_command_line, kForwardSwitches, |
231 arraysize(kForwardSwitches)); | 233 arraysize(kForwardSwitches)); |
232 | 234 |
233 if (child_connection_) { | 235 if (child_connection_) { |
234 cmd_line->AppendSwitchASCII(switches::kServiceRequestChannelToken, | 236 cmd_line->AppendSwitchASCII(switches::kServiceRequestChannelToken, |
235 child_connection_->service_token()); | 237 child_connection_->service_token()); |
236 } | 238 } |
237 | 239 |
238 notify_child_disconnected_ = true; | 240 notify_child_disconnected_ = true; |
(...skipping 351 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
590 | 592 |
591 #if defined(OS_WIN) | 593 #if defined(OS_WIN) |
592 | 594 |
593 void BrowserChildProcessHostImpl::OnObjectSignaled(HANDLE object) { | 595 void BrowserChildProcessHostImpl::OnObjectSignaled(HANDLE object) { |
594 OnChildDisconnected(); | 596 OnChildDisconnected(); |
595 } | 597 } |
596 | 598 |
597 #endif | 599 #endif |
598 | 600 |
599 } // namespace content | 601 } // namespace content |
OLD | NEW |