| OLD | NEW |
| 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 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 "chrome/browser/utility_process_host.h" | 5 #include "chrome/browser/utility_process_host.h" |
| 6 | 6 |
| 7 #include "app/app_switches.h" |
| 8 #include "app/l10n_util.h" |
| 7 #include "base/command_line.h" | 9 #include "base/command_line.h" |
| 8 #include "base/file_util.h" | 10 #include "base/file_util.h" |
| 9 #include "base/message_loop.h" | 11 #include "base/message_loop.h" |
| 10 #include "base/path_service.h" | 12 #include "base/path_service.h" |
| 11 #include "base/process_util.h" | 13 #include "base/process_util.h" |
| 12 #include "base/string_util.h" | 14 #include "base/string_util.h" |
| 13 #include "base/task.h" | 15 #include "base/task.h" |
| 14 #include "chrome/common/chrome_switches.h" | 16 #include "chrome/common/chrome_switches.h" |
| 15 #include "chrome/common/render_messages.h" | 17 #include "chrome/common/render_messages.h" |
| 16 #include "ipc/ipc_switches.h" | 18 #include "ipc/ipc_switches.h" |
| (...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 82 if (exe_path.empty()) { | 84 if (exe_path.empty()) { |
| 83 NOTREACHED() << "Unable to get utility process binary name."; | 85 NOTREACHED() << "Unable to get utility process binary name."; |
| 84 return false; | 86 return false; |
| 85 } | 87 } |
| 86 | 88 |
| 87 CommandLine cmd_line(exe_path); | 89 CommandLine cmd_line(exe_path); |
| 88 cmd_line.AppendSwitchWithValue(switches::kProcessType, | 90 cmd_line.AppendSwitchWithValue(switches::kProcessType, |
| 89 switches::kUtilityProcess); | 91 switches::kUtilityProcess); |
| 90 cmd_line.AppendSwitchWithValue(switches::kProcessChannelID, | 92 cmd_line.AppendSwitchWithValue(switches::kProcessChannelID, |
| 91 ASCIIToWide(channel_id())); | 93 ASCIIToWide(channel_id())); |
| 94 // Pass on the browser locale. |
| 95 std::string locale = l10n_util::GetApplicationLocale(L""); |
| 96 cmd_line.AppendSwitchWithValue(switches::kLang, ASCIIToWide(locale)); |
| 97 |
| 92 SetCrashReporterCommandLine(&cmd_line); | 98 SetCrashReporterCommandLine(&cmd_line); |
| 93 | 99 |
| 94 base::ProcessHandle process; | 100 base::ProcessHandle process; |
| 95 #if defined(OS_WIN) | 101 #if defined(OS_WIN) |
| 96 if (!UseSandbox()) { | 102 if (!UseSandbox()) { |
| 97 // Don't use the sandbox during unit tests. | 103 // Don't use the sandbox during unit tests. |
| 98 base::LaunchApp(cmd_line, false, false, &process); | 104 base::LaunchApp(cmd_line, false, false, &process); |
| 99 } else if (exposed_dir.empty()) { | 105 } else if (exposed_dir.empty()) { |
| 100 process = sandbox::StartProcess(&cmd_line); | 106 process = sandbox::StartProcess(&cmd_line); |
| 101 } else { | 107 } else { |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 156 IPC_MESSAGE_HANDLER(UtilityHostMsg_UnpackWebResource_Succeeded, | 162 IPC_MESSAGE_HANDLER(UtilityHostMsg_UnpackWebResource_Succeeded, |
| 157 Client::OnUnpackWebResourceSucceeded) | 163 Client::OnUnpackWebResourceSucceeded) |
| 158 IPC_MESSAGE_HANDLER(UtilityHostMsg_UnpackWebResource_Failed, | 164 IPC_MESSAGE_HANDLER(UtilityHostMsg_UnpackWebResource_Failed, |
| 159 Client::OnUnpackWebResourceFailed) | 165 Client::OnUnpackWebResourceFailed) |
| 160 IPC_MESSAGE_HANDLER(UtilityHostMsg_ParseUpdateManifest_Succeeded, | 166 IPC_MESSAGE_HANDLER(UtilityHostMsg_ParseUpdateManifest_Succeeded, |
| 161 Client::OnParseUpdateManifestSucceeded) | 167 Client::OnParseUpdateManifestSucceeded) |
| 162 IPC_MESSAGE_HANDLER(UtilityHostMsg_ParseUpdateManifest_Failed, | 168 IPC_MESSAGE_HANDLER(UtilityHostMsg_ParseUpdateManifest_Failed, |
| 163 Client::OnParseUpdateManifestFailed) | 169 Client::OnParseUpdateManifestFailed) |
| 164 IPC_END_MESSAGE_MAP_EX() | 170 IPC_END_MESSAGE_MAP_EX() |
| 165 } | 171 } |
| OLD | NEW |