kernel32: Support MUI_LANGUAGE_ID flag in EnumUILanguages.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Jacek Caban 2019-02-13 13:47:58 +01:00 committed by Alexandre Julliard
parent c4a5485295
commit 5bb4212397
2 changed files with 10 additions and 2 deletions

View file

@ -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;
}

View file

@ -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);