summaryrefslogtreecommitdiffstats
path: root/content/app
diff options
context:
space:
mode:
authortapted@chromium.org <tapted@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-10-05 00:19:40 +0000
committertapted@chromium.org <tapted@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-10-05 00:19:40 +0000
commit22eedd374ac1ad856679dc731ab3b894d618e78c (patch)
treecef54e547bc106f7f0a79257e0d9276b9e3dce80 /content/app
parent1101dbc5431a558283c5b0ca962d7fedc351e1e2 (diff)
downloadchromium_src-22eedd374ac1ad856679dc731ab3b894d618e78c.zip
chromium_src-22eedd374ac1ad856679dc731ab3b894d618e78c.tar.gz
chromium_src-22eedd374ac1ad856679dc731ab3b894d618e78c.tar.bz2
Mac: Do not ask to handle power events in processes with no PowerManager.
Otherwise Chrome causes a 30-second delay trying to put a Mac to sleep. Only the main browser process, and nacl processes, create a PowerMonitorDeviceSource. However, renderers and other processes still call the static function PowerMonitorDeviceSource::AllocateSystemIOPorts. This results in the process asking to receive power change notifications, but not hooking up a function to acknowledge them. This results in 30-second timeouts while trying to sleep a Mac. This change removes plugin, renderer, utility and worker processes from the list of process types that register to receive power change events from OS X. BUG=132336 TEST=Put a Mac to sleep with Chrome running. After waking, run `pmset -g log` from Terminal. There should be no new entries for Chrome under applicationresponse.timedout [10.6] or on a `Timedout` line [10.8] Review URL: https://codereview.chromium.org/25954005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@227148 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/app')
-rw-r--r--content/app/content_main_runner.cc4
1 files changed, 0 insertions, 4 deletions
diff --git a/content/app/content_main_runner.cc b/content/app/content_main_runner.cc
index 949514a..da27afa 100644
--- a/content/app/content_main_runner.cc
+++ b/content/app/content_main_runner.cc
@@ -672,10 +672,6 @@ class ContentMainRunnerImpl : public ContentMainRunner {
// It's important not to allocate the ports for processes which don't
// register with the power monitor - see crbug.com/88867.
if (process_type.empty() ||
- process_type == switches::kPluginProcess ||
- process_type == switches::kRendererProcess ||
- process_type == switches::kUtilityProcess ||
- process_type == switches::kWorkerProcess ||
(delegate &&
delegate->ProcessRegistersWithSystemProcess(process_type))) {
base::PowerMonitorDeviceSource::AllocateSystemIOPorts();