Andrew Eikum : shlwapi: Check for NULL string in UrlIs.
Alexandre Julliard
julliard at winehq.org
Mon Apr 12 09:54:07 CDT 2010
Module: wine
Branch: master
Commit: 48111674106c74013149389767a16ec24e001ccb
URL: http://source.winehq.org/git/wine.git/?a=commit;h=48111674106c74013149389767a16ec24e001ccb
Author: Andrew Eikum <aeikum at codeweavers.com>
Date: Fri Apr 9 18:08:16 2010 -0500
shlwapi: Check for NULL string in UrlIs.
---
dlls/shlwapi/tests/url.c | 17 +++++++++++++++++
dlls/shlwapi/url.c | 6 ++++++
2 files changed, 23 insertions(+), 0 deletions(-)
diff --git a/dlls/shlwapi/tests/url.c b/dlls/shlwapi/tests/url.c
index f7c9455..0dd9643 100644
--- a/dlls/shlwapi/tests/url.c
+++ b/dlls/shlwapi/tests/url.c
@@ -1048,6 +1048,15 @@ static void test_UrlCreateFromPath(void)
/* ########################### */
+static void test_UrlIs_null(DWORD flag)
+{
+ BOOL ret;
+ ret = pUrlIsA(NULL, flag);
+ ok(ret == FALSE, "pUrlIsA(NULL, %d) failed\n", flag);
+ ret = pUrlIsW(NULL, flag);
+ ok(ret == FALSE, "pUrlIsW(NULL, %d) failed\n", flag);
+}
+
static void test_UrlIs(void)
{
BOOL ret;
@@ -1059,6 +1068,14 @@ static void test_UrlIs(void)
return;
}
+ test_UrlIs_null(URLIS_APPLIABLE);
+ test_UrlIs_null(URLIS_DIRECTORY);
+ test_UrlIs_null(URLIS_FILEURL);
+ test_UrlIs_null(URLIS_HASQUERY);
+ test_UrlIs_null(URLIS_NOHISTORY);
+ test_UrlIs_null(URLIS_OPAQUE);
+ test_UrlIs_null(URLIS_URL);
+
for(i = 0; i < sizeof(TEST_PATH_IS_URL) / sizeof(TEST_PATH_IS_URL[0]); i++) {
MultiByteToWideChar(CP_ACP, 0, TEST_PATH_IS_URL[i].path, -1, wurl, 80);
diff --git a/dlls/shlwapi/url.c b/dlls/shlwapi/url.c
index d6487b3..cd83b45 100644
--- a/dlls/shlwapi/url.c
+++ b/dlls/shlwapi/url.c
@@ -1719,6 +1719,9 @@ BOOL WINAPI UrlIsA(LPCSTR pszUrl, URLIS Urlis)
TRACE("(%s %d)\n", debugstr_a(pszUrl), Urlis);
+ if(!pszUrl)
+ return FALSE;
+
switch (Urlis) {
case URLIS_OPAQUE:
@@ -1769,6 +1772,9 @@ BOOL WINAPI UrlIsW(LPCWSTR pszUrl, URLIS Urlis)
TRACE("(%s %d)\n", debugstr_w(pszUrl), Urlis);
+ if(!pszUrl)
+ return FALSE;
+
switch (Urlis) {
case URLIS_OPAQUE:
More information about the wine-cvs
mailing list