[PATCH 2/2] shlwapi/tests: Test NULL UrlCanonicalizeA/W() parameters.

Zhiyi Zhang zzhang at codeweavers.com
Sun May 17 20:52:13 CDT 2020


Signed-off-by: Zhiyi Zhang <zzhang at codeweavers.com>
---
 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));
-- 
2.25.1



More information about the wine-devel mailing list