From c169263b0bb6c2ebea84ac2b3bac122948a81c71 Mon Sep 17 00:00:00 2001 From: Zhiyi Zhang Date: Mon, 18 May 2020 09:52:13 +0800 Subject: [PATCH] shlwapi/tests: Test NULL UrlCanonicalizeA/W() parameters. Signed-off-by: Zhiyi Zhang Signed-off-by: Alexandre Julliard --- dlls/shlwapi/tests/url.c | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/dlls/shlwapi/tests/url.c b/dlls/shlwapi/tests/url.c index d30737f60a4..2e1df632016 100644 --- a/dlls/shlwapi/tests/url.c +++ b/dlls/shlwapi/tests/url.c @@ -1052,6 +1052,22 @@ static void test_UrlCanonicalizeA(void) urllen = lstrlenA(winehqA); + /* Parameter checks */ + dwSize = ARRAY_SIZE(szReturnUrl); + hr = pUrlCanonicalizeA(NULL, szReturnUrl, &dwSize, URL_UNESCAPE); + ok(hr == E_INVALIDARG, "Got unexpected hr %#x.\n", hr); + + dwSize = ARRAY_SIZE(szReturnUrl); + hr = pUrlCanonicalizeA(winehqA, NULL, &dwSize, URL_UNESCAPE); + ok(hr == E_INVALIDARG, "Got unexpected hr %#x.\n", hr); + + hr = pUrlCanonicalizeA(winehqA, szReturnUrl, NULL, URL_UNESCAPE); + ok(hr == E_INVALIDARG, "Got unexpected hr %#x.\n", hr); + + dwSize = 0; + hr = pUrlCanonicalizeA(winehqA, szReturnUrl, &dwSize, URL_UNESCAPE); + ok(hr == E_INVALIDARG, "Got unexpected hr %#x.\n", hr); + /* buffer has no space for the result */ dwSize=urllen-1; memset(szReturnUrl, '#', urllen+4); @@ -1137,6 +1153,22 @@ static void test_UrlCanonicalizeW(void) } urllen = lstrlenW(winehqW); + /* Parameter checks */ + dwSize = ARRAY_SIZE(szReturnUrl); + hr = pUrlCanonicalizeW(NULL, szReturnUrl, &dwSize, URL_UNESCAPE); + ok(hr == E_INVALIDARG, "Got unexpected hr %#x.\n", hr); + + dwSize = ARRAY_SIZE(szReturnUrl); + hr = pUrlCanonicalizeW(winehqW, NULL, &dwSize, URL_UNESCAPE); + ok(hr == E_INVALIDARG, "Got unexpected hr %#x.\n", hr); + + hr = pUrlCanonicalizeW(winehqW, szReturnUrl, NULL, URL_UNESCAPE); + ok(hr == E_INVALIDARG, "Got unexpected hr %#x.\n", hr); + + dwSize = 0; + hr = pUrlCanonicalizeW(winehqW, szReturnUrl, &dwSize, URL_UNESCAPE); + ok(hr == E_INVALIDARG, "Got unexpected hr %#x.\n", hr); + /* buffer has no space for the result */ dwSize = (urllen-1); memset(szReturnUrl, '#', (urllen+4) * sizeof(WCHAR));