diff options
author | jorgelo@chromium.org <jorgelo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-12-13 19:32:38 +0000 |
---|---|---|
committer | jorgelo@chromium.org <jorgelo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-12-13 19:32:38 +0000 |
commit | 3dd18d02843a00b2b60dc9adbae09d25a93b79d0 (patch) | |
tree | b981aea23c3fcb1c8dcd77bfa67be725ea1a127d | |
parent | 54af837075a853dc13c9a85378aac56c60c70927 (diff) | |
download | chromium_src-3dd18d02843a00b2b60dc9adbae09d25a93b79d0.zip chromium_src-3dd18d02843a00b2b60dc9adbae09d25a93b79d0.tar.gz chromium_src-3dd18d02843a00b2b60dc9adbae09d25a93b79d0.tar.bz2 |
Convert calls to the utility process in extension code to use the zygote on Linux.
Exclude extension unpacking since it accesses the FS.
BUG=93109
TEST=Install an extension from the Web Store.
Review URL: http://codereview.chromium.org/8921023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@114248 0039d316-1c4b-4281-b951-d872f2087c98
4 files changed, 4 insertions, 0 deletions
diff --git a/chrome/browser/extensions/extension_management_api.cc b/chrome/browser/extensions/extension_management_api.cc index 15d67a2..cc457e6 100644 --- a/chrome/browser/extensions/extension_management_api.cc +++ b/chrome/browser/extensions/extension_management_api.cc @@ -212,6 +212,7 @@ class SafeManifestJSONParser : public UtilityProcessHost::Client { void StartWorkOnIOThread() { CHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); utility_host_ = new UtilityProcessHost(this, BrowserThread::IO); + utility_host_->set_use_linux_zygote(true); utility_host_->Send(new ChromeUtilityMsg_ParseJSON(manifest_)); } diff --git a/chrome/browser/extensions/extension_updater.cc b/chrome/browser/extensions/extension_updater.cc index 2048d9f..4f2be1e 100644 --- a/chrome/browser/extensions/extension_updater.cc +++ b/chrome/browser/extensions/extension_updater.cc @@ -650,6 +650,7 @@ class SafeManifestParser : public UtilityProcessHost::Client { if (use_utility_process) { UtilityProcessHost* host = new UtilityProcessHost( this, BrowserThread::UI); + host->set_use_linux_zygote(true); host->Send(new ChromeUtilityMsg_ParseUpdateManifest(xml_)); } else { UpdateManifest manifest; diff --git a/chrome/browser/extensions/webstore_inline_installer.cc b/chrome/browser/extensions/webstore_inline_installer.cc index 30f28fe..087f435 100644 --- a/chrome/browser/extensions/webstore_inline_installer.cc +++ b/chrome/browser/extensions/webstore_inline_installer.cc @@ -73,6 +73,7 @@ class SafeWebstoreResponseParser : public UtilityProcessHost::Client { void StartWorkOnIOThread() { CHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); utility_host_ = new UtilityProcessHost(this, BrowserThread::IO); + utility_host_->set_use_linux_zygote(true); utility_host_->Send(new ChromeUtilityMsg_ParseJSON(webstore_data_)); } diff --git a/chrome/browser/extensions/webstore_install_helper.cc b/chrome/browser/extensions/webstore_install_helper.cc index fabfd7d..e9199ed1 100644 --- a/chrome/browser/extensions/webstore_install_helper.cc +++ b/chrome/browser/extensions/webstore_install_helper.cc @@ -68,6 +68,7 @@ void WebstoreInstallHelper::Start() { void WebstoreInstallHelper::StartWorkOnIOThread() { CHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); utility_host_ = new UtilityProcessHost(this, BrowserThread::IO); + utility_host_->set_use_linux_zygote(true); utility_host_->StartBatchMode(); if (!icon_base64_data_.empty()) |