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 "chrome/browser/browser_process_impl.h" | 5 #include "chrome/browser/browser_process_impl.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <algorithm> | 9 #include <algorithm> |
10 #include <map> | 10 #include <map> |
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
71 #include "chrome/browser/shell_integration.h" | 71 #include "chrome/browser/shell_integration.h" |
72 #include "chrome/browser/status_icons/status_tray.h" | 72 #include "chrome/browser/status_icons/status_tray.h" |
73 #include "chrome/browser/ui/browser_dialogs.h" | 73 #include "chrome/browser/ui/browser_dialogs.h" |
74 #include "chrome/browser/ui/browser_finder.h" | 74 #include "chrome/browser/ui/browser_finder.h" |
75 #include "chrome/browser/update_client/chrome_update_query_params_delegate.h" | 75 #include "chrome/browser/update_client/chrome_update_query_params_delegate.h" |
76 #include "chrome/common/channel_info.h" | 76 #include "chrome/common/channel_info.h" |
77 #include "chrome/common/chrome_constants.h" | 77 #include "chrome/common/chrome_constants.h" |
78 #include "chrome/common/chrome_paths.h" | 78 #include "chrome/common/chrome_paths.h" |
79 #include "chrome/common/chrome_switches.h" | 79 #include "chrome/common/chrome_switches.h" |
80 #include "chrome/common/extensions/chrome_extensions_client.h" | 80 #include "chrome/common/extensions/chrome_extensions_client.h" |
81 #include "chrome/common/extensions/extension_process_policy.h" | |
81 #include "chrome/common/features.h" | 82 #include "chrome/common/features.h" |
82 #include "chrome/common/pref_names.h" | 83 #include "chrome/common/pref_names.h" |
83 #include "chrome/common/switch_utils.h" | 84 #include "chrome/common/switch_utils.h" |
84 #include "chrome/common/url_constants.h" | 85 #include "chrome/common/url_constants.h" |
85 #include "chrome/installer/util/google_update_constants.h" | 86 #include "chrome/installer/util/google_update_constants.h" |
86 #include "chrome/installer/util/google_update_settings.h" | 87 #include "chrome/installer/util/google_update_settings.h" |
87 #include "components/component_updater/component_updater_service.h" | 88 #include "components/component_updater/component_updater_service.h" |
88 #include "components/gcm_driver/gcm_driver.h" | 89 #include "components/gcm_driver/gcm_driver.h" |
89 #include "components/metrics/metrics_pref_names.h" | 90 #include "components/metrics/metrics_pref_names.h" |
90 #include "components/metrics/metrics_service.h" | 91 #include "components/metrics/metrics_service.h" |
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
213 print_job_manager_.reset(new printing::PrintJobManager); | 214 print_job_manager_.reset(new printing::PrintJobManager); |
214 #endif | 215 #endif |
215 | 216 |
216 base::FilePath net_log_path; | 217 base::FilePath net_log_path; |
217 if (command_line.HasSwitch(switches::kLogNetLog)) | 218 if (command_line.HasSwitch(switches::kLogNetLog)) |
218 net_log_path = command_line.GetSwitchValuePath(switches::kLogNetLog); | 219 net_log_path = command_line.GetSwitchValuePath(switches::kLogNetLog); |
219 net_log_.reset(new net_log::ChromeNetLog( | 220 net_log_.reset(new net_log::ChromeNetLog( |
220 net_log_path, GetNetCaptureModeFromCommandLine(command_line), | 221 net_log_path, GetNetCaptureModeFromCommandLine(command_line), |
221 command_line.GetCommandLineString(), chrome::GetChannelString())); | 222 command_line.GetCommandLineString(), chrome::GetChannelString())); |
222 | 223 |
223 ChildProcessSecurityPolicy::GetInstance()->RegisterWebSafeScheme( | 224 #if defined(ENABLE_EXTENSIONS) |
224 extensions::kExtensionScheme); | 225 // chrome-extension:// URLs are safe to request anywhere, but may only |
225 ChildProcessSecurityPolicy::GetInstance()->RegisterWebSafeScheme( | 226 // commit (including in iframes) in extension processes. |
Charlie Reis
2016/09/29 21:39:37
nit: Move comment inside the conditional, since it
ncarter (slow)
2016/09/29 22:04:02
Done.
| |
226 extensions::kExtensionResourceScheme); | 227 if (extensions::IsIsolateExtensionsEnabled()) { |
Charlie Reis
2016/09/29 21:39:37
Nice. Agreed that we need this if we want to merg
ncarter (slow)
2016/09/29 22:04:02
Done. FWIW, I'm a little nervous about consulting
| |
228 ChildProcessSecurityPolicy::GetInstance()->RegisterWebSafeIsolatedScheme( | |
229 extensions::kExtensionScheme, true); | |
230 // TODO(nick): Kill off kExtensionResourceScheme. | |
231 ChildProcessSecurityPolicy::GetInstance()->RegisterWebSafeIsolatedScheme( | |
232 extensions::kExtensionResourceScheme, false); | |
233 } else { | |
234 ChildProcessSecurityPolicy::GetInstance()->RegisterWebSafeScheme( | |
235 extensions::kExtensionScheme); | |
236 ChildProcessSecurityPolicy::GetInstance()->RegisterWebSafeScheme( | |
237 extensions::kExtensionResourceScheme); | |
238 } | |
239 #endif | |
227 ChildProcessSecurityPolicy::GetInstance()->RegisterWebSafeScheme( | 240 ChildProcessSecurityPolicy::GetInstance()->RegisterWebSafeScheme( |
228 chrome::kChromeSearchScheme); | 241 chrome::kChromeSearchScheme); |
229 | 242 |
230 #if defined(OS_MACOSX) | 243 #if defined(OS_MACOSX) |
231 ui::InitIdleMonitor(); | 244 ui::InitIdleMonitor(); |
232 #endif | 245 #endif |
233 | 246 |
234 device_client_.reset(new ChromeDeviceClient); | 247 device_client_.reset(new ChromeDeviceClient); |
235 | 248 |
236 #if defined(ENABLE_EXTENSIONS) | 249 #if defined(ENABLE_EXTENSIONS) |
(...skipping 1108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1345 } | 1358 } |
1346 | 1359 |
1347 void BrowserProcessImpl::OnAutoupdateTimer() { | 1360 void BrowserProcessImpl::OnAutoupdateTimer() { |
1348 if (CanAutorestartForUpdate()) { | 1361 if (CanAutorestartForUpdate()) { |
1349 DLOG(WARNING) << "Detected update. Restarting browser."; | 1362 DLOG(WARNING) << "Detected update. Restarting browser."; |
1350 RestartBackgroundInstance(); | 1363 RestartBackgroundInstance(); |
1351 } | 1364 } |
1352 } | 1365 } |
1353 | 1366 |
1354 #endif // (defined(OS_WIN) || defined(OS_LINUX)) && !defined(OS_CHROMEOS) | 1367 #endif // (defined(OS_WIN) || defined(OS_LINUX)) && !defined(OS_CHROMEOS) |
OLD | NEW |