summaryrefslogtreecommitdiffstats
path: root/chrome/app/chrome_main.cc
diff options
context:
space:
mode:
authorrsesek@chromium.org <rsesek@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-27 18:05:15 +0000
committerrsesek@chromium.org <rsesek@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-27 18:05:15 +0000
commit4912595f15ad54608207cbacaeeb085cf542e539 (patch)
tree0d32785d543ed97e3999673eda92fe81323773ef /chrome/app/chrome_main.cc
parent6c36f5e4b14f45fd54d60fa9abe7fc99c749eb49 (diff)
downloadchromium_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.cc7
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="