kernelbase: Reimplement ConvertDefaultLocale() using the locale.nls data.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
0263494bec
commit
17c353a3bb
|
@ -3318,44 +3318,7 @@ INT WINAPI DECLSPEC_HOTPATCH CompareStringOrdinal( const WCHAR *str1, INT len1,
|
||||||
*/
|
*/
|
||||||
LCID WINAPI DECLSPEC_HOTPATCH ConvertDefaultLocale( LCID lcid )
|
LCID WINAPI DECLSPEC_HOTPATCH ConvertDefaultLocale( LCID lcid )
|
||||||
{
|
{
|
||||||
switch (lcid)
|
get_locale_by_id( &lcid, 0 );
|
||||||
{
|
|
||||||
case LOCALE_INVARIANT:
|
|
||||||
return lcid; /* keep as-is */
|
|
||||||
case LOCALE_SYSTEM_DEFAULT:
|
|
||||||
return GetSystemDefaultLCID();
|
|
||||||
case LOCALE_USER_DEFAULT:
|
|
||||||
case LOCALE_NEUTRAL:
|
|
||||||
return GetUserDefaultLCID();
|
|
||||||
case MAKELANGID( LANG_CHINESE, SUBLANG_NEUTRAL ):
|
|
||||||
case MAKELANGID( LANG_CHINESE, 0x1e ):
|
|
||||||
return MAKELANGID( LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED );
|
|
||||||
case MAKELANGID( LANG_CHINESE, 0x1f ):
|
|
||||||
return MAKELANGID( LANG_CHINESE, SUBLANG_CHINESE_HONGKONG );
|
|
||||||
case LANG_SERBIAN_NEUTRAL:
|
|
||||||
return MAKELANGID( LANG_SERBIAN, SUBLANG_SERBIAN_SERBIA_LATIN );
|
|
||||||
case MAKELANGID( LANG_SPANISH, SUBLANG_NEUTRAL ):
|
|
||||||
return MAKELANGID( LANG_SPANISH, SUBLANG_SPANISH_MODERN );
|
|
||||||
case MAKELANGID( LANG_IRISH, SUBLANG_NEUTRAL ):
|
|
||||||
return MAKELANGID( LANG_IRISH, SUBLANG_IRISH_IRELAND );
|
|
||||||
case MAKELANGID( LANG_BENGALI, SUBLANG_NEUTRAL ):
|
|
||||||
return MAKELANGID( LANG_BENGALI, SUBLANG_BENGALI_BANGLADESH );
|
|
||||||
case MAKELANGID( LANG_SINDHI, SUBLANG_NEUTRAL ):
|
|
||||||
return MAKELANGID( LANG_SINDHI, SUBLANG_SINDHI_AFGHANISTAN );
|
|
||||||
case MAKELANGID( LANG_INUKTITUT, SUBLANG_NEUTRAL ):
|
|
||||||
return MAKELANGID( LANG_INUKTITUT, SUBLANG_INUKTITUT_CANADA_LATIN );
|
|
||||||
case MAKELANGID( LANG_TAMAZIGHT, SUBLANG_NEUTRAL ):
|
|
||||||
return MAKELANGID( LANG_TAMAZIGHT, SUBLANG_TAMAZIGHT_ALGERIA_LATIN );
|
|
||||||
case MAKELANGID( LANG_FULAH, SUBLANG_NEUTRAL ):
|
|
||||||
return MAKELANGID( LANG_FULAH, SUBLANG_FULAH_SENEGAL );
|
|
||||||
case MAKELANGID( LANG_TIGRINYA, SUBLANG_NEUTRAL ):
|
|
||||||
return MAKELANGID( LANG_TIGRINYA, SUBLANG_TIGRINYA_ERITREA );
|
|
||||||
default:
|
|
||||||
/* Replace SUBLANG_NEUTRAL with SUBLANG_DEFAULT */
|
|
||||||
if (SUBLANGID(lcid) == SUBLANG_NEUTRAL && SORTIDFROMLCID(lcid) == SORT_DEFAULT)
|
|
||||||
lcid = MAKELANGID( PRIMARYLANGID(lcid), SUBLANG_DEFAULT );
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
return lcid;
|
return lcid;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue