Module: wine Branch: master Commit: 4d57ee3409222d6705793572df8073199e30fe7f URL: http://source.winehq.org/git/wine.git/?a=commit;h=4d57ee3409222d6705793572df...
Author: Paul TBBle Hampson Paul.Hampson@Pobox.com Date: Sat Apr 25 02:31:06 2009 +1000
wininet: HTTP_HttpAddRequestHeadersW should ignore 0-length headers.
---
dlls/wininet/http.c | 7 +++++++ dlls/wininet/tests/http.c | 2 -- 2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/dlls/wininet/http.c b/dlls/wininet/http.c index 3bda535..ac0b88f 100644 --- a/dlls/wininet/http.c +++ b/dlls/wininet/http.c @@ -610,6 +610,13 @@ static BOOL HTTP_HttpAddRequestHeadersW(LPWININETHTTPREQW lpwhr, lpszEnd += 2; /* Jump over \r\n */ } TRACE("interpreting header %s\n", debugstr_w(lpszStart)); + if (*lpszStart == '\0') + { + /* Skip 0-length headers */ + lpszStart = lpszEnd; + bSuccess = TRUE; + continue; + } pFieldAndValue = HTTP_InterpretHttpHeader(lpszStart); if (pFieldAndValue) { diff --git a/dlls/wininet/tests/http.c b/dlls/wininet/tests/http.c index 79b5683..e3c33bd 100644 --- a/dlls/wininet/tests/http.c +++ b/dlls/wininet/tests/http.c @@ -1275,7 +1275,6 @@ static void HttpHeaders_test(void) ok(HttpQueryInfo(hRequest,HTTP_QUERY_CUSTOM|HTTP_QUERY_FLAG_REQUEST_HEADERS, buffer,&len,&index)==0,"Third Header Should Not Exist\n");
/* Ensure that blank headers are ignored and don't cause a failure */ - todo_wine{ ok(HttpAddRequestHeaders(hRequest,"\r\nBlankTest:value\r\n\r\n",-1, HTTP_ADDREQ_FLAG_ADD_IF_NEW), "Failed to add header with blank entries in list\n");
index = 0; @@ -1284,7 +1283,6 @@ static void HttpHeaders_test(void) ok(HttpQueryInfo(hRequest,HTTP_QUERY_CUSTOM|HTTP_QUERY_FLAG_REQUEST_HEADERS, buffer,&len,&index),"Unable to query header\n"); ok(index == 1, "Index was not incremented\n"); ok(strcmp(buffer,"value")==0, "incorrect string was returned(%s)\n",buffer); - }
ok(InternetCloseHandle(hRequest), "Close request handle failed\n"); done: