diff options
author | asargent@chromium.org <asargent@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-10-05 16:11:35 +0000 |
---|---|---|
committer | asargent@chromium.org <asargent@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-10-05 16:11:35 +0000 |
commit | b98b0decec407b51de69cd60bf4c0c903d65f8e1 (patch) | |
tree | 167ab65b3bee9af92d792ba1fa37973741983263 /chrome/browser/extensions/sandboxed_extension_unpacker.cc | |
parent | 766a6923903d8aa4f2d15f603b0f628e97980426 (diff) | |
download | chromium_src-b98b0decec407b51de69cd60bf4c0c903d65f8e1.zip chromium_src-b98b0decec407b51de69cd60bf4c0c903d65f8e1.tar.gz chromium_src-b98b0decec407b51de69cd60bf4c0c903d65f8e1.tar.bz2 |
Do not use the utility process on linux.
We don't currently use the zygote to spawn the utility process, so after browser updates bad bugs can occur with mismatched subprocesses. See crbug.com/23327 and crbug.com/22703.
BUG=23327
TEST=Extensions installation/autoupdate and New Tab Page tip download should still work.
Review URL: http://codereview.chromium.org/256036
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27997 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions/sandboxed_extension_unpacker.cc')
-rw-r--r-- | chrome/browser/extensions/sandboxed_extension_unpacker.cc | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/chrome/browser/extensions/sandboxed_extension_unpacker.cc b/chrome/browser/extensions/sandboxed_extension_unpacker.cc index 7003139..9d043b7 100644 --- a/chrome/browser/extensions/sandboxed_extension_unpacker.cc +++ b/chrome/browser/extensions/sandboxed_extension_unpacker.cc @@ -63,8 +63,16 @@ void SandboxedExtensionUnpacker::Start() { // // TODO(asargent) we shouldn't need to do this branch here - instead // UtilityProcessHost should handle it for us. (http://crbug.com/19192) - if (rdh_ && - !CommandLine::ForCurrentProcess()->HasSwitch(switches::kSingleProcess)) { + bool use_utility_process = rdh_ && + !CommandLine::ForCurrentProcess()->HasSwitch(switches::kSingleProcess); + +#if defined(OS_POSIX) + // TODO(port): Don't use a utility process on linux (crbug.com/22703) or + // MacOS (crbug.com/8102) until problems related to autoupdate are fixed. + use_utility_process = false; +#endif + + if (use_utility_process) { ChromeThread::GetMessageLoop(ChromeThread::IO)->PostTask(FROM_HERE, NewRunnableMethod(this, &SandboxedExtensionUnpacker::StartProcessOnIOThread, |