summaryrefslogtreecommitdiffstats
path: root/chrome_frame
diff options
context:
space:
mode:
authorananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-01-13 22:41:45 +0000
committerananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-01-13 22:41:45 +0000
commit2759a96ab58737dbe64c59c6f74192029e67be34 (patch)
tree2df1fae914533a21936bd08e62addfdfc7fa3271 /chrome_frame
parentdf6a9609f10c7b114fcc8548321eaac32817fdef (diff)
downloadchromium_src-2759a96ab58737dbe64c59c6f74192029e67be34.zip
chromium_src-2759a96ab58737dbe64c59c6f74192029e67be34.tar.gz
chromium_src-2759a96ab58737dbe64c59c6f74192029e67be34.tar.bz2
Fix for the InstallFlowTest failures seen on the chrome frame IE6 builder. This test registers
the chrome frame BHO dynamically and verifies whether a subsequent navigation attempt to a chrome frame page works correctly. This started failing since the change to set the user agent in the registry. We need to refresh the IE UA by invoking the UrlMkSetSessionOption API to ensure that the subsequent switching works. BUG=none TEST=Covered by existing ChromeFrame InstallFlowTest. Review URL: http://codereview.chromium.org/6251005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71373 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome_frame')
-rw-r--r--chrome_frame/chrome_frame_activex.cc9
1 files changed, 8 insertions, 1 deletions
diff --git a/chrome_frame/chrome_frame_activex.cc b/chrome_frame/chrome_frame_activex.cc
index ce5f386..d7f4ef0 100644
--- a/chrome_frame/chrome_frame_activex.cc
+++ b/chrome_frame/chrome_frame_activex.cc
@@ -691,5 +691,12 @@ HRESULT ChromeFrameActivex::registerBhoIfNeeded() {
web_browser2->PutProperty(base::win::ScopedBstr(bho_class_id_as_string),
base::win::ScopedVariant(bho));
- return S_OK;
+
+ hr = UrlMkSetSessionOption(URLMON_OPTION_USERAGENT_REFRESH, NULL, 0, 0);
+ if (FAILED(hr)) {
+ DLOG(ERROR) << "Failed to refresh user agent string from registry. "
+ << "UrlMkSetSessionOption returned "
+ << base::StringPrintf("0x%08x", hr);
+ }
+ return hr;
}