[PATCH 2/4] kernelbase: Map LANG_SERBIAN_NEUTRAL in ConvertDefaultLocale().

Zebediah Figura z.figura12 at gmail.com
Wed Feb 3 17:48:34 CST 2021


Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
---
 dlls/kernel32/tests/locale.c | 4 ++++
 dlls/kernelbase/locale.c     | 2 ++
 2 files changed, 6 insertions(+)

diff --git a/dlls/kernel32/tests/locale.c b/dlls/kernel32/tests/locale.c
index 3fdfa251144..0f409abe3e2 100644
--- a/dlls/kernel32/tests/locale.c
+++ b/dlls/kernel32/tests/locale.c
@@ -3652,6 +3652,10 @@ static void test_ConvertDefaultLocale(void)
       broken( lcid == 0x7c04 ) ||  /* winxp */
       broken( lcid == 0x0404 ),  /* vista */
       "Expected lcid = %08x got %08x\n", MAKELANGID( LANG_CHINESE, SUBLANG_CHINESE_HONGKONG ), lcid );
+  lcid = ConvertDefaultLocale( LANG_SERBIAN_NEUTRAL );
+  ok( lcid == MAKELANGID( LANG_SERBIAN, SUBLANG_SERBIAN_SERBIA_LATIN ) ||
+      broken( lcid == MAKELANGID( LANG_SERBIAN, SUBLANG_SERBIAN_LATIN ) ),  /* <= vista */
+      "Expected lcid = %08x got %08x\n", MAKELANGID( LANG_SERBIAN, SUBLANG_SERBIAN_SERBIA_LATIN ), lcid );
 
   /* Invariant language is not treated specially */
   TEST_LCID(LANG_INVARIANT, SUBLANG_DEFAULT, SORT_DEFAULT);
diff --git a/dlls/kernelbase/locale.c b/dlls/kernelbase/locale.c
index c60b796aa48..d2f71c97ac7 100644
--- a/dlls/kernelbase/locale.c
+++ b/dlls/kernelbase/locale.c
@@ -3189,6 +3189,8 @@ LCID WINAPI DECLSPEC_HOTPATCH ConvertDefaultLocale( LCID lcid )
         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 ):
-- 
2.20.1




More information about the wine-devel mailing list