Commit 39b1dbed authored by Hans Leidekker's avatar Hans Leidekker Committed by Alexandre Julliard

winhttp: Accept empty headers parameter in WinHttpSendRequest.

parent ebe6dabe
...@@ -411,6 +411,7 @@ BOOL add_request_headers( request_t *request, LPCWSTR headers, DWORD len, DWORD ...@@ -411,6 +411,7 @@ BOOL add_request_headers( request_t *request, LPCWSTR headers, DWORD len, DWORD
header_t *header; header_t *header;
if (len == ~0u) len = strlenW( headers ); if (len == ~0u) len = strlenW( headers );
if (!len) return TRUE;
if (!(buffer = heap_alloc( (len + 1) * sizeof(WCHAR) ))) return FALSE; if (!(buffer = heap_alloc( (len + 1) * sizeof(WCHAR) ))) return FALSE;
strcpyW( buffer, headers ); strcpyW( buffer, headers );
......
...@@ -221,6 +221,30 @@ static void test_OpenRequest (void) ...@@ -221,6 +221,30 @@ static void test_OpenRequest (void)
} }
static void test_empty_headers_param(void)
{
static const WCHAR winehq[] = {'w','i','n','e','h','q','.','o','r','g',0};
static const WCHAR empty[] = {0};
HANDLE ses, con, req;
BOOL ret;
ses = WinHttpOpen(test_useragent, 0, NULL, NULL, 0);
ok(ses != NULL, "failed to open session %u\n", GetLastError());
con = WinHttpConnect(ses, winehq, 80, 0);
ok(con != NULL, "failed to open a connection %u\n", GetLastError());
req = WinHttpOpenRequest(con, NULL, NULL, NULL, NULL, NULL, 0);
ok(req != NULL, "failed to open a request %u\n", GetLastError());
ret = WinHttpSendRequest(req, empty, 0, NULL, 0, 0, 0);
ok(ret, "failed to send request %u\n", GetLastError());
WinHttpCloseHandle(req);
WinHttpCloseHandle(con);
WinHttpCloseHandle(ses);
}
static void test_SendRequest (void) static void test_SendRequest (void)
{ {
HINTERNET session, request, connection; HINTERNET session, request, connection;
...@@ -978,4 +1002,5 @@ START_TEST (winhttp) ...@@ -978,4 +1002,5 @@ START_TEST (winhttp)
test_request_parameter_defaults(); test_request_parameter_defaults();
test_QueryOption(); test_QueryOption();
test_set_default_proxy_config(); test_set_default_proxy_config();
test_empty_headers_param();
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment