urlmon: Call IInternetProtocolSink_Release and ReleaseStgMedium in HttpProtocol where native does.
This commit is contained in:
parent
c8ab2a947c
commit
5a11a1201f
|
@ -142,11 +142,6 @@ static void HTTPPROTOCOL_AllDataRead(HttpProtocol *This)
|
|||
|
||||
static void HTTPPROTOCOL_Close(HttpProtocol *This)
|
||||
{
|
||||
if (This->protocol_sink)
|
||||
{
|
||||
IInternetProtocolSink_Release(This->protocol_sink);
|
||||
This->protocol_sink = 0;
|
||||
}
|
||||
if (This->http_negotiate)
|
||||
{
|
||||
IHttpNegotiate_Release(This->http_negotiate);
|
||||
|
@ -173,11 +168,6 @@ static void HTTPPROTOCOL_Close(HttpProtocol *This)
|
|||
HeapFree(GetProcessHeap(), 0, This->full_header);
|
||||
This->full_header = 0;
|
||||
}
|
||||
if (This->bind_info.cbSize)
|
||||
{
|
||||
ReleaseBindInfo(&This->bind_info);
|
||||
memset(&This->bind_info, 0, sizeof(This->bind_info));
|
||||
}
|
||||
This->flags = 0;
|
||||
}
|
||||
|
||||
|
@ -214,6 +204,18 @@ static void CALLBACK HTTPPROTOCOL_InternetStatusCallback(
|
|||
else
|
||||
IInternetProtocol_Continue((IInternetProtocol *)This, &data);
|
||||
return;
|
||||
case INTERNET_STATUS_HANDLE_CLOSING:
|
||||
if (This->protocol_sink)
|
||||
{
|
||||
IInternetProtocolSink_Release(This->protocol_sink);
|
||||
This->protocol_sink = 0;
|
||||
}
|
||||
if (This->bind_info.cbSize)
|
||||
{
|
||||
ReleaseBindInfo(&This->bind_info);
|
||||
memset(&This->bind_info, 0, sizeof(This->bind_info));
|
||||
}
|
||||
return;
|
||||
default:
|
||||
WARN("Unhandled Internet status callback %d\n", dwInternetStatus);
|
||||
return;
|
||||
|
|
Loading…
Reference in New Issue