Hans Leidekker : winhttp: Don' t attempt to read data after receiving a response to a HEAD request.
Alexandre Julliard
julliard at winehq.org
Fri Jan 27 11:30:40 CST 2012
Module: wine
Branch: master
Commit: ebc4fd146285d4f45803d52b1b9da6cddfad2058
URL: http://source.winehq.org/git/wine.git/?a=commit;h=ebc4fd146285d4f45803d52b1b9da6cddfad2058
Author: Hans Leidekker <hans at codeweavers.com>
Date: Fri Jan 27 10:53:50 2012 +0100
winhttp: Don't attempt to read data after receiving a response to a HEAD request.
---
dlls/winhttp/request.c | 6 +++++-
dlls/winhttp/winhttp_private.h | 1 +
2 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/dlls/winhttp/request.c b/dlls/winhttp/request.c
index 516ff35..a3a92ab 100644
--- a/dlls/winhttp/request.c
+++ b/dlls/winhttp/request.c
@@ -2815,7 +2815,11 @@ static HRESULT request_receive( struct winhttp_request *request )
return HRESULT_FROM_WIN32( get_last_error() );
}
if ((err = wait_for_completion( request ))) return HRESULT_FROM_WIN32( err );
-
+ if (!strcmpW( request->verb, headW ))
+ {
+ request->state = REQUEST_STATE_RESPONSE_RECEIVED;
+ return S_OK;
+ }
if (!(request->buffer = heap_alloc( buflen ))) return E_OUTOFMEMORY;
request->buffer[0] = 0;
size = total_bytes_read = 0;
diff --git a/dlls/winhttp/winhttp_private.h b/dlls/winhttp/winhttp_private.h
index 7105553..021bc93 100644
--- a/dlls/winhttp/winhttp_private.h
+++ b/dlls/winhttp/winhttp_private.h
@@ -46,6 +46,7 @@
static const WCHAR getW[] = {'G','E','T',0};
static const WCHAR postW[] = {'P','O','S','T',0};
+static const WCHAR headW[] = {'H','E','A','D',0};
static const WCHAR slashW[] = {'/',0};
static const WCHAR http1_0[] = {'H','T','T','P','/','1','.','0',0};
static const WCHAR http1_1[] = {'H','T','T','P','/','1','.','1',0};
More information about the wine-cvs
mailing list