Akihiro Sagawa : kernel32: Zero is an invalid flag value.
Alexandre Julliard
julliard at winehq.org
Fri Sep 23 10:25:16 CDT 2016
Module: wine
Branch: master
Commit: 5fbdd644d6493c19eb3e2634fd2101b54661f336
URL: http://source.winehq.org/git/wine.git/?a=commit;h=5fbdd644d6493c19eb3e2634fd2101b54661f336
Author: Akihiro Sagawa <sagawa.aki at gmail.com>
Date: Fri Sep 23 00:06:10 2016 +0900
kernel32: Zero is an invalid flag value.
Signed-off-by: Akihiro Sagawa <sagawa.aki at gmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/kernel32/locale.c | 3 ++-
dlls/kernel32/tests/locale.c | 1 +
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/dlls/kernel32/locale.c b/dlls/kernel32/locale.c
index ce64fe6..24911e8 100644
--- a/dlls/kernel32/locale.c
+++ b/dlls/kernel32/locale.c
@@ -3154,7 +3154,8 @@ INT WINAPI LCMapStringEx(LPCWSTR name, DWORD flags, LPCWSTR src, INT srclen, LPW
if ((flags & (LCMAP_LOWERCASE | LCMAP_UPPERCASE)) == (LCMAP_LOWERCASE | LCMAP_UPPERCASE) ||
(flags & (LCMAP_HIRAGANA | LCMAP_KATAKANA)) == (LCMAP_HIRAGANA | LCMAP_KATAKANA) ||
(flags & (LCMAP_HALFWIDTH | LCMAP_FULLWIDTH)) == (LCMAP_HALFWIDTH | LCMAP_FULLWIDTH) ||
- (flags & (LCMAP_TRADITIONAL_CHINESE | LCMAP_SIMPLIFIED_CHINESE)) == (LCMAP_TRADITIONAL_CHINESE | LCMAP_SIMPLIFIED_CHINESE))
+ (flags & (LCMAP_TRADITIONAL_CHINESE | LCMAP_SIMPLIFIED_CHINESE)) == (LCMAP_TRADITIONAL_CHINESE | LCMAP_SIMPLIFIED_CHINESE) ||
+ !flags)
{
SetLastError(ERROR_INVALID_FLAGS);
return 0;
diff --git a/dlls/kernel32/tests/locale.c b/dlls/kernel32/tests/locale.c
index c1dee00..a37d367 100644
--- a/dlls/kernel32/tests/locale.c
+++ b/dlls/kernel32/tests/locale.c
@@ -2196,6 +2196,7 @@ static void test_CompareStringEx(void)
}
static const DWORD lcmap_invalid_flags[] = {
+ 0,
LCMAP_HIRAGANA | LCMAP_KATAKANA,
LCMAP_HALFWIDTH | LCMAP_FULLWIDTH,
LCMAP_TRADITIONAL_CHINESE | LCMAP_SIMPLIFIED_CHINESE,
More information about the wine-cvs
mailing list