urlmon: Added Abort implementation to wininet-based protocols.
This commit is contained in:
parent
140f08bd42
commit
159c23e137
|
@ -186,8 +186,10 @@ static HRESULT WINAPI FtpProtocol_Abort(IInternetProtocol *iface, HRESULT hrReas
|
||||||
DWORD dwOptions)
|
DWORD dwOptions)
|
||||||
{
|
{
|
||||||
FtpProtocol *This = PROTOCOL_THIS(iface);
|
FtpProtocol *This = PROTOCOL_THIS(iface);
|
||||||
FIXME("(%p)->(%08x %08x)\n", This, hrReason, dwOptions);
|
|
||||||
return E_NOTIMPL;
|
TRACE("(%p)->(%08x %08x)\n", This, hrReason, dwOptions);
|
||||||
|
|
||||||
|
return protocol_abort(&This->base, hrReason);
|
||||||
}
|
}
|
||||||
|
|
||||||
static HRESULT WINAPI FtpProtocol_Terminate(IInternetProtocol *iface, DWORD dwOptions)
|
static HRESULT WINAPI FtpProtocol_Terminate(IInternetProtocol *iface, DWORD dwOptions)
|
||||||
|
|
|
@ -161,8 +161,10 @@ static HRESULT WINAPI GopherProtocol_Abort(IInternetProtocol *iface, HRESULT hrR
|
||||||
DWORD dwOptions)
|
DWORD dwOptions)
|
||||||
{
|
{
|
||||||
GopherProtocol *This = PROTOCOL_THIS(iface);
|
GopherProtocol *This = PROTOCOL_THIS(iface);
|
||||||
FIXME("(%p)->(%08x %08x)\n", This, hrReason, dwOptions);
|
|
||||||
return E_NOTIMPL;
|
TRACE("(%p)->(%08x %08x)\n", This, hrReason, dwOptions);
|
||||||
|
|
||||||
|
return protocol_abort(&This->base, hrReason);
|
||||||
}
|
}
|
||||||
|
|
||||||
static HRESULT WINAPI GopherProtocol_Terminate(IInternetProtocol *iface, DWORD dwOptions)
|
static HRESULT WINAPI GopherProtocol_Terminate(IInternetProtocol *iface, DWORD dwOptions)
|
||||||
|
|
|
@ -162,6 +162,7 @@ static HRESULT HttpProtocol_open_request(Protocol *prot, IUri *uri, DWORD reques
|
||||||
&IID_IHttpNegotiate, (void **)&This->http_negotiate);
|
&IID_IHttpNegotiate, (void **)&This->http_negotiate);
|
||||||
if (hres != S_OK) {
|
if (hres != S_OK) {
|
||||||
WARN("IServiceProvider_QueryService IID_IHttpNegotiate failed: %08x\n", hres);
|
WARN("IServiceProvider_QueryService IID_IHttpNegotiate failed: %08x\n", hres);
|
||||||
|
IServiceProvider_Release(service_provider);
|
||||||
return hres;
|
return hres;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -438,8 +439,10 @@ static HRESULT WINAPI HttpProtocol_Abort(IInternetProtocol *iface, HRESULT hrRea
|
||||||
DWORD dwOptions)
|
DWORD dwOptions)
|
||||||
{
|
{
|
||||||
HttpProtocol *This = PROTOCOL_THIS(iface);
|
HttpProtocol *This = PROTOCOL_THIS(iface);
|
||||||
FIXME("(%p)->(%08x %08x)\n", This, hrReason, dwOptions);
|
|
||||||
return E_NOTIMPL;
|
TRACE("(%p)->(%08x %08x)\n", This, hrReason, dwOptions);
|
||||||
|
|
||||||
|
return protocol_abort(&This->base, hrReason);
|
||||||
}
|
}
|
||||||
|
|
||||||
static HRESULT WINAPI HttpProtocol_Terminate(IInternetProtocol *iface, DWORD dwOptions)
|
static HRESULT WINAPI HttpProtocol_Terminate(IInternetProtocol *iface, DWORD dwOptions)
|
||||||
|
|
|
@ -428,6 +428,18 @@ HRESULT protocol_unlock_request(Protocol *protocol)
|
||||||
return S_OK;
|
return S_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
HRESULT protocol_abort(Protocol *protocol, HRESULT reason)
|
||||||
|
{
|
||||||
|
if(!protocol->protocol_sink)
|
||||||
|
return S_OK;
|
||||||
|
|
||||||
|
if(protocol->flags & FLAG_RESULT_REPORTED)
|
||||||
|
return INET_E_RESULT_DISPATCHED;
|
||||||
|
|
||||||
|
report_result(protocol, reason);
|
||||||
|
return S_OK;
|
||||||
|
}
|
||||||
|
|
||||||
void protocol_close_connection(Protocol *protocol)
|
void protocol_close_connection(Protocol *protocol)
|
||||||
{
|
{
|
||||||
protocol->vtbl->close_connection(protocol);
|
protocol->vtbl->close_connection(protocol);
|
||||||
|
|
|
@ -115,6 +115,7 @@ HRESULT protocol_continue(Protocol*,PROTOCOLDATA*);
|
||||||
HRESULT protocol_read(Protocol*,void*,ULONG,ULONG*);
|
HRESULT protocol_read(Protocol*,void*,ULONG,ULONG*);
|
||||||
HRESULT protocol_lock_request(Protocol*);
|
HRESULT protocol_lock_request(Protocol*);
|
||||||
HRESULT protocol_unlock_request(Protocol*);
|
HRESULT protocol_unlock_request(Protocol*);
|
||||||
|
HRESULT protocol_abort(Protocol*,HRESULT);
|
||||||
void protocol_close_connection(Protocol*);
|
void protocol_close_connection(Protocol*);
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
|
|
Loading…
Reference in New Issue