OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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/at_exit.h" | 5 #include "base/at_exit.h" |
6 #include "base/command_line.h" | 6 #include "base/command_line.h" |
| 7 #include "base/debug/stack_trace.h" |
| 8 #include "base/process/launch.h" |
| 9 #include "build/build_config.h" |
7 #include "mojo/runner/child_process.h" | 10 #include "mojo/runner/child_process.h" |
8 #include "mojo/runner/desktop/launcher_process.h" | 11 #include "mojo/runner/desktop/launcher_process.h" |
9 #include "mojo/runner/init.h" | 12 #include "mojo/runner/init.h" |
10 #include "mojo/runner/switches.h" | 13 #include "mojo/runner/switches.h" |
11 | 14 |
12 int main(int argc, char** argv) { | 15 int main(int argc, char** argv) { |
13 base::AtExitManager at_exit; | 16 base::AtExitManager at_exit; |
14 base::CommandLine::Init(argc, argv); | 17 base::CommandLine::Init(argc, argv); |
15 | 18 |
16 mojo::runner::InitializeLogging(); | 19 mojo::runner::InitializeLogging(); |
17 | 20 |
18 const base::CommandLine& command_line = | 21 const base::CommandLine& command_line = |
19 *base::CommandLine::ForCurrentProcess(); | 22 *base::CommandLine::ForCurrentProcess(); |
| 23 |
| 24 #if !defined(OFFICIAL_BUILD) |
| 25 base::debug::EnableInProcessStackDumping(); |
| 26 #if defined(OS_WIN) |
| 27 base::RouteStdioToConsole(false); |
| 28 #endif |
| 29 #endif |
| 30 |
20 if (command_line.HasSwitch(switches::kChildProcess)) | 31 if (command_line.HasSwitch(switches::kChildProcess)) |
21 return mojo::runner::ChildProcessMain(); | 32 return mojo::runner::ChildProcessMain(); |
22 | 33 |
23 return mojo::runner::LauncherProcessMain(argc, argv); | 34 return mojo::runner::LauncherProcessMain(argc, argv); |
24 } | 35 } |
OLD | NEW |