summaryrefslogtreecommitdiffstats
path: root/chrome_frame/http_negotiate.cc
diff options
context:
space:
mode:
authortommi@chromium.org <tommi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-02-26 19:25:34 +0000
committertommi@chromium.org <tommi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-02-26 19:25:34 +0000
commitd6a2b644891c820fa50203789dee80ef636bf1e8 (patch)
treeae372e33e4f9265344b108cc94ce2161cba79ba2 /chrome_frame/http_negotiate.cc
parentfb4f61ccfebb16b0e1e069bdbb82be3595414078 (diff)
downloadchromium_src-d6a2b644891c820fa50203789dee80ef636bf1e8.zip
chromium_src-d6a2b644891c820fa50203789dee80ef636bf1e8.tar.gz
chromium_src-d6a2b644891c820fa50203789dee80ef636bf1e8.tar.bz2
Releasing the IBindStatusCallback_PatchInfo patch after we've applied the IInternetProtocolSink_PatchInfo one.
TEST=Should be no change. If there is a regression because of this, it would be in the form of failing to switch to CF for pages that have the CF meta tag. BUG=none Review URL: http://codereview.chromium.org/660032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40144 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome_frame/http_negotiate.cc')
-rw-r--r--chrome_frame/http_negotiate.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/chrome_frame/http_negotiate.cc b/chrome_frame/http_negotiate.cc
index 45409f5..f9c9d48 100644
--- a/chrome_frame/http_negotiate.cc
+++ b/chrome_frame/http_negotiate.cc
@@ -294,6 +294,12 @@ HRESULT HttpNegotiatePatch::StartBinding(
if (!IS_PATCHED(IInternetProtocolSink)) {
hr = vtable_patch::PatchInterfaceMethods(protocol_sink,
IInternetProtocolSink_PatchInfo);
+ DCHECK(SUCCEEDED(hr));
+ // Now that we've gotten to the protocol sink,
+ // we don't need this patch anymore.
+ HRESULT hr_unpatch = vtable_patch::UnpatchInterfaceMethods(
+ IBindStatusCallback_PatchInfo);
+ DCHECK(SUCCEEDED(hr_unpatch));
}
DLOG_IF(WARNING, FAILED(hr))