Jacek Caban : kernel32: Support MUI_LANGUAGE_ID flag in EnumUILanguages.
Alexandre Julliard
julliard at winehq.org
Wed Feb 13 15:30:40 CST 2019
Module: wine
Branch: master
Commit: 5bb421239771d759d3a2ce1e584def62a4abdaee
URL: https://source.winehq.org/git/wine.git/?a=commit;h=5bb421239771d759d3a2ce1e584def62a4abdaee
Author: Jacek Caban <jacek at codeweavers.com>
Date: Wed Feb 13 13:47:58 2019 +0100
kernel32: Support MUI_LANGUAGE_ID flag in EnumUILanguages.
Signed-off-by: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/kernel32/locale.c | 4 ++--
dlls/kernel32/tests/locale.c | 8 ++++++++
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/dlls/kernel32/locale.c b/dlls/kernel32/locale.c
index 9f539dd..eedb0be 100644
--- a/dlls/kernel32/locale.c
+++ b/dlls/kernel32/locale.c
@@ -4814,7 +4814,7 @@ BOOL WINAPI EnumUILanguagesA(UILANGUAGE_ENUMPROCA pUILangEnumProc, DWORD dwFlags
SetLastError(ERROR_INVALID_PARAMETER);
return FALSE;
}
- if(dwFlags) {
+ if(dwFlags & ~MUI_LANGUAGE_ID) {
SetLastError(ERROR_INVALID_FLAGS);
return FALSE;
}
@@ -4843,7 +4843,7 @@ BOOL WINAPI EnumUILanguagesW(UILANGUAGE_ENUMPROCW pUILangEnumProc, DWORD dwFlags
SetLastError(ERROR_INVALID_PARAMETER);
return FALSE;
}
- if(dwFlags) {
+ if(dwFlags & ~MUI_LANGUAGE_ID) {
SetLastError(ERROR_INVALID_FLAGS);
return FALSE;
}
diff --git a/dlls/kernel32/tests/locale.c b/dlls/kernel32/tests/locale.c
index 0c05311..126b08c 100644
--- a/dlls/kernel32/tests/locale.c
+++ b/dlls/kernel32/tests/locale.c
@@ -3762,6 +3762,14 @@ static void test_EnumUILanguageA(void)
SetLastError(ERROR_SUCCESS);
ret = pEnumUILanguagesA(luilocale_proc2A, 0, 0);
ok(ret, "Expected ret != 0, got %d, error %d\n", ret, GetLastError());
+ ok(enumCount == 1, "enumCount = %u\n", enumCount);
+
+ enumCount = 0;
+ SetLastError(ERROR_SUCCESS);
+ ret = pEnumUILanguagesA(luilocale_proc2A, MUI_LANGUAGE_ID, 0);
+ ok(ret || broken(!ret && GetLastError() == ERROR_INVALID_FLAGS), /* winxp */
+ "Expected ret != 0, got %d, error %d\n", ret, GetLastError());
+ if (ret) ok(enumCount == 1, "enumCount = %u\n", enumCount);
SetLastError(ERROR_SUCCESS);
ret = pEnumUILanguagesA(NULL, 0, 0);
More information about the wine-cvs
mailing list