Jacek Caban : urlmon: Avoid ProtocolHandler being destroyed in Terminate call.
Alexandre Julliard
julliard at winehq.org
Thu May 15 15:14:31 CDT 2014
Module: wine
Branch: master
Commit: 54bf34f1e7cd916cfee8b4c383d7552296ae9a4b
URL: http://source.winehq.org/git/wine.git/?a=commit;h=54bf34f1e7cd916cfee8b4c383d7552296ae9a4b
Author: Jacek Caban <jacek at codeweavers.com>
Date: Thu May 15 18:56:51 2014 +0200
urlmon: Avoid ProtocolHandler being destroyed in Terminate call.
---
dlls/urlmon/bindprot.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/dlls/urlmon/bindprot.c b/dlls/urlmon/bindprot.c
index 7f2bea1..1efb74c 100644
--- a/dlls/urlmon/bindprot.c
+++ b/dlls/urlmon/bindprot.c
@@ -698,6 +698,9 @@ static HRESULT WINAPI ProtocolHandler_Terminate(IInternetProtocol *iface, DWORD
if(!This->reported_result)
return E_FAIL;
+ /* This may get released in Terminate call. */
+ IInternetProtocolEx_AddRef(&This->IInternetProtocolEx_iface);
+
IInternetProtocol_Terminate(This->protocol, 0);
set_binding_sink(This, NULL, NULL);
@@ -707,6 +710,7 @@ static HRESULT WINAPI ProtocolHandler_Terminate(IInternetProtocol *iface, DWORD
This->bind_info = NULL;
}
+ IInternetProtocolEx_Release(&This->IInternetProtocolEx_iface);
return S_OK;
}
More information about the wine-cvs
mailing list