Commit 224d0733 authored by Zebediah Figura's avatar Zebediah Figura Committed by Alexandre Julliard

kernelbase: Return E_INVALIDARG when requesting URL_PART_PORT and there is no port.

parent 67ea5ccc
......@@ -4347,6 +4347,8 @@ HRESULT WINAPI UrlGetPartW(const WCHAR *url, WCHAR *out, DWORD *out_len, DWORD p
break;
case URL_PART_PORT:
if (!pl.port)
return E_INVALIDARG;
if (!pl.port_len)
{
*out = '\0';
......
......@@ -624,7 +624,7 @@ static void test_UrlGetPart(void)
{"http://localhost/", URL_PART_USERNAME, 0, E_INVALIDARG},
{"http://localhost/", URL_PART_PASSWORD, 0, E_INVALIDARG},
{"http://localhost/", URL_PART_HOSTNAME, 0, S_OK, "localhost"},
{"http://localhost/", URL_PART_PORT, 0, E_INVALIDARG, .todo_hr = TRUE},
{"http://localhost/", URL_PART_PORT, 0, E_INVALIDARG},
{"http://localhost/", URL_PART_QUERY, 0, S_FALSE, ""},
{"http://localhost:port/", URL_PART_USERNAME, 0, E_INVALIDARG},
......@@ -637,7 +637,7 @@ static void test_UrlGetPart(void)
{"http://user@localhost", URL_PART_USERNAME, 0, S_OK, "user"},
{"http://user@localhost", URL_PART_PASSWORD, 0, E_INVALIDARG},
{"http://user@localhost", URL_PART_HOSTNAME, 0, S_OK, "localhost"},
{"http://user@localhost", URL_PART_PORT, 0, E_INVALIDARG, .todo_hr = TRUE},
{"http://user@localhost", URL_PART_PORT, 0, E_INVALIDARG},
{"http://@", URL_PART_USERNAME, 0, S_FALSE, ""},
{"http://@", URL_PART_PASSWORD, 0, E_INVALIDARG},
{"http://@", URL_PART_HOSTNAME, 0, S_FALSE, ""},
......@@ -645,7 +645,7 @@ static void test_UrlGetPart(void)
{"http://user:pass@localhost", URL_PART_USERNAME, 0, S_OK, "user"},
{"http://user:pass@localhost", URL_PART_PASSWORD, 0, S_OK, "pass"},
{"http://user:pass@localhost", URL_PART_HOSTNAME, 0, S_OK, "localhost"},
{"http://user:pass@localhost", URL_PART_PORT, 0, E_INVALIDARG, .todo_hr = TRUE},
{"http://user:pass@localhost", URL_PART_PORT, 0, E_INVALIDARG},
{"http://:@", URL_PART_USERNAME, 0, S_FALSE, ""},
{"http://:@", URL_PART_PASSWORD, 0, S_FALSE, ""},
{"http://:@", URL_PART_HOSTNAME, 0, S_FALSE, ""},
......
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