diff options
author | rsesek@chromium.org <rsesek@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-09-27 18:05:15 +0000 |
---|---|---|
committer | rsesek@chromium.org <rsesek@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-09-27 18:05:15 +0000 |
commit | 4912595f15ad54608207cbacaeeb085cf542e539 (patch) | |
tree | 0d32785d543ed97e3999673eda92fe81323773ef /chrome/app/chrome_main.cc | |
parent | 6c36f5e4b14f45fd54d60fa9abe7fc99c749eb49 (diff) | |
download | chromium_src-4912595f15ad54608207cbacaeeb085cf542e539.zip chromium_src-4912595f15ad54608207cbacaeeb085cf542e539.tar.gz chromium_src-4912595f15ad54608207cbacaeeb085cf542e539.tar.bz2 |
Move plugin loading out of process on Mac and Linux.
This creates a new set of IPC messages for the utility process to load plugins
to get the WebPluginInfo data in a separate process. Previously this was done
in the browser process, but that involves loading arbitrary third-party code
into the address space and then executing it.
BUG=17863,95114
TEST=Plugins work as before.
Review URL: http://codereview.chromium.org/7889025
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102971 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/app/chrome_main.cc')
-rw-r--r-- | chrome/app/chrome_main.cc | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/chrome/app/chrome_main.cc b/chrome/app/chrome_main.cc index d24ccf7..96f4b51 100644 --- a/chrome/app/chrome_main.cc +++ b/chrome/app/chrome_main.cc @@ -34,6 +34,7 @@ #include "content/common/content_client.h" #include "content/common/content_counters.h" #include "content/common/content_paths.h" +#include "content/common/content_switches.h" #include "media/base/media.h" #include "ui/base/resource/resource_bundle.h" #include "ui/base/ui_base_switches.h" @@ -487,9 +488,11 @@ class ChromeMainDelegate : public content::ContentMainDelegate { executable.value().substr(executable.value().size() - 3); if (last_three == " EH") { - CHECK_EQ(switches::kPluginProcess, process_type) + CHECK(process_type == switches::kPluginProcess || + process_type == switches::kUtilityProcess) << "Executable-heap process requires --type=" - << switches::kPluginProcess << ", saw " << process_type; + << switches::kPluginProcess << " or " + << switches::kUtilityProcess << ", saw " << process_type; } else if (last_three == " NP") { CHECK_EQ(switches::kNaClLoaderProcess, process_type) << "Non-PIE process requires --type=" |