Nikolay Sivov : kernel32: Handle NULL locale name in IsValidLocaleName().

Alexandre Julliard julliard at wine.codeweavers.com
Mon May 16 10:36:44 CDT 2016


Module: wine
Branch: master
Commit: 73f7bf57cb74dedc19070192ed9fd577dc0ff7f3
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=73f7bf57cb74dedc19070192ed9fd577dc0ff7f3

Author: Nikolay Sivov <nsivov at codeweavers.com>
Date:   Sun May 15 10:29:43 2016 +0300

kernel32: Handle NULL locale name in IsValidLocaleName().

Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/kernel32/locale.c       | 3 +++
 dlls/kernel32/tests/locale.c | 2 ++
 2 files changed, 5 insertions(+)

diff --git a/dlls/kernel32/locale.c b/dlls/kernel32/locale.c
index a2f369a..14b2ba7 100644
--- a/dlls/kernel32/locale.c
+++ b/dlls/kernel32/locale.c
@@ -2656,6 +2656,9 @@ BOOL WINAPI IsValidLocaleName( LPCWSTR locale )
 {
     struct locale_name locale_name;
 
+    if (!locale)
+        return FALSE;
+
     /* string parsing */
     parse_locale_name( locale, &locale_name );
 
diff --git a/dlls/kernel32/tests/locale.c b/dlls/kernel32/tests/locale.c
index 20f52d2..70944a2 100644
--- a/dlls/kernel32/tests/locale.c
+++ b/dlls/kernel32/tests/locale.c
@@ -4179,6 +4179,8 @@ static void test_IsValidLocaleName(void)
     ok(!ret, "IsValidLocaleName should have failed\n");
     ret = pIsValidLocaleName(LOCALE_NAME_INVARIANT);
     ok(ret, "IsValidLocaleName failed\n");
+    ret = pIsValidLocaleName(NULL);
+    ok(!ret, "IsValidLocaleName should have failed\n");
 }
 
 static void test_CompareStringOrdinal(void)




More information about the wine-cvs mailing list