From: Austin English Subject: kernel32: implement IsValidLocaleName (as a wrapper around IsValidLocale) Message-Id: Date: Tue, 10 Jul 2012 07:33:25 -0500 Finishes http://bugs.winehq.org/show_bug.cgi?id=31130. Should be applied after kernel32.dll GetLocaleInfoEx (please let me know if I should resend as a series). -- -Austin diff --git a/dlls/kernel32/kernel32.spec b/dlls/kernel32/kernel32.spec index 7c8f9e2..e7669c1 100644 --- a/dlls/kernel32/kernel32.spec +++ b/dlls/kernel32/kernel32.spec @@ -776,6 +776,7 @@ @ stdcall IsValidCodePage(long) @ stdcall IsValidLanguageGroup(long long) @ stdcall IsValidLocale(long long) +@ stdcall IsValidLocaleName(wstr) # @ stub IsValidUILanguage @ stdcall IsWow64Process(ptr ptr) @ stdcall K32EmptyWorkingSet(long) diff --git a/dlls/kernel32/locale.c b/dlls/kernel32/locale.c index 748969e..0e96430 100644 --- a/dlls/kernel32/locale.c +++ b/dlls/kernel32/locale.c @@ -2202,6 +2202,21 @@ BOOL WINAPI IsValidLocale( LCID lcid, DWORD flags ) (LPCWSTR)LOCALE_ILANGUAGE, LANGIDFROMLCID(lcid)) != 0; } +/****************************************************************************** + * IsValidLocaleName (KERNEL32.@) + * + * See IsValidLocale(). + */ +BOOL WINAPI IsValidLocaleName( LPCWSTR locale ) +{ + LCID lcid; + BOOL ret; + + TRACE( "locale: %s\n", debugstr_w(locale) ); + lcid = LocaleNameToLCID( locale, 0 ); + ret = IsValidLocale( lcid, 0 ); + return ret; +} static BOOL CALLBACK enum_lang_proc_a( HMODULE hModule, LPCSTR type, LPCSTR name, WORD LangID, LONG_PTR lParam ) -- 1.7.10.4