diff options
author | ananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-12-10 21:55:08 +0000 |
---|---|---|
committer | ananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-12-10 21:55:08 +0000 |
commit | e253b2610361d3036d85dbea58f8bef2d1d8e261 (patch) | |
tree | 4dab2a4bbb1622dc07b2c862d6b5aba56dc83965 /chrome/browser/browser_init.cc | |
parent | 4a665eedf71acddba1bc1f74be11340abdba185f (diff) | |
download | chromium_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.cc | 11 |
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)) { |