summaryrefslogtreecommitdiffstats
path: root/chrome/browser/browser_init.cc
diff options
context:
space:
mode:
authorananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-12-10 21:55:08 +0000
committerananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-12-10 21:55:08 +0000
commite253b2610361d3036d85dbea58f8bef2d1d8e261 (patch)
tree4dab2a4bbb1622dc07b2c862d6b5aba56dc83965 /chrome/browser/browser_init.cc
parent4a665eedf71acddba1bc1f74be11340abdba185f (diff)
downloadchromium_src-e253b2610361d3036d85dbea58f8bef2d1d8e261.zip
chromium_src-e253b2610361d3036d85dbea58f8bef2d1d8e261.tar.gz
chromium_src-e253b2610361d3036d85dbea58f8bef2d1d8e261.tar.bz2
ChromeFrame uses the IPC automation channel to talk to Chrome. The IPC messages sent by ChromeFrame
are handled by the AutomationProvider class in Chrome, which also handles other IPC's not used by ChromeFrame. We now have a new class ChromeFrameAutomationProvider which derives from the AutomationProvider class and validates that incoming IPC messages are valid ChromeFrame messages. Bug=29931 Test=Covered by unit test Review URL: http://codereview.chromium.org/476008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34290 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/browser_init.cc')
-rw-r--r--chrome/browser/browser_init.cc11
1 files changed, 9 insertions, 2 deletions
diff --git a/chrome/browser/browser_init.cc b/chrome/browser/browser_init.cc
index 1241f0a..8dee0dc 100644
--- a/chrome/browser/browser_init.cc
+++ b/chrome/browser/browser_init.cc
@@ -10,6 +10,7 @@
#include "base/path_service.h"
#include "base/sys_info.h"
#include "chrome/browser/automation/automation_provider.h"
+#include "chrome/browser/automation/chrome_frame_automation_provider.h"
#include "chrome/browser/browser_list.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/browser_window.h"
@@ -813,8 +814,14 @@ bool BrowserInit::ProcessCmdLineImpl(const CommandLine& command_line,
0);
if (expected_tabs == 0)
silent_launch = true;
- CreateAutomationProvider<AutomationProvider>(automation_channel_id,
- profile, expected_tabs);
+
+ if (command_line.HasSwitch(switches::kChromeFrame)) {
+ CreateAutomationProvider<ChromeFrameAutomationProvider>(
+ automation_channel_id, profile, expected_tabs);
+ } else {
+ CreateAutomationProvider<AutomationProvider>(automation_channel_id,
+ profile, expected_tabs);
+ }
}
if (command_line.HasSwitch(switches::kUseFlip)) {