summaryrefslogtreecommitdiffstats
path: root/chrome_frame/utils.cc
diff options
context:
space:
mode:
authorananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-01-15 01:40:20 +0000
committerananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-01-15 01:40:20 +0000
commit7694e6e99cdc9dd9fd30b0371714963c54e0b614 (patch)
treefc07b7d8eb7b4092be43fa8b4b340228e2d72fa4 /chrome_frame/utils.cc
parent083f4cfee80e8e172875e2ca8666815b638d6d84 (diff)
downloadchromium_src-7694e6e99cdc9dd9fd30b0371714963c54e0b614.zip
chromium_src-7694e6e99cdc9dd9fd30b0371714963c54e0b614.tar.gz
chromium_src-7694e6e99cdc9dd9fd30b0371714963c54e0b614.tar.bz2
Fix for the ChromeFrame DownloadFromForm test failures on the IE9 builder. This test
causes the latest IE9 developer preview version to crash. Reason being a change in the interface implementing the NavigateWithBindCtx2 method. BUG=none TEST=Covered by existing DownloadFromForm test. TBR=amit Review URL: http://codereview.chromium.org/6253003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71532 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome_frame/utils.cc')
-rw-r--r--chrome_frame/utils.cc14
1 files changed, 11 insertions, 3 deletions
diff --git a/chrome_frame/utils.cc b/chrome_frame/utils.cc
index eb6abce..c23080c 100644
--- a/chrome_frame/utils.cc
+++ b/chrome_frame/utils.cc
@@ -847,9 +847,17 @@ HRESULT NavigateBrowserToMoniker(IUnknown* browser, IMoniker* moniker,
uri_container->GetIUri(uri_obj.Receive());
DCHECK(uri_obj);
- hr = browser_priv2->NavigateWithBindCtx2(uri_obj, NULL, NULL, NULL,
- headers_var.AsInput(), bind_ctx,
- const_cast<wchar_t*>(fragment));
+ if (GetIEVersion() < IE_9) {
+ hr = browser_priv2->NavigateWithBindCtx2(
+ uri_obj, NULL, NULL, NULL, headers_var.AsInput(), bind_ctx,
+ const_cast<wchar_t*>(fragment));
+ } else {
+ IWebBrowserPriv2CommonIE9* browser_priv2_ie9 =
+ reinterpret_cast<IWebBrowserPriv2CommonIE9*>(browser_priv2.get());
+ hr = browser_priv2_ie9->NavigateWithBindCtx2(
+ uri_obj, NULL, NULL, NULL, headers_var.AsInput(), bind_ctx,
+ const_cast<wchar_t*>(fragment), 0);
+ }
DLOG_IF(WARNING, FAILED(hr))
<< base::StringPrintf(L"NavigateWithBindCtx2 0x%08X", hr);
}