Piotr Caban : msvcrt: Support "China" country name in setlocale function.

Alexandre Julliard julliard at winehq.org
Mon Apr 9 15:41:10 CDT 2018


Module: wine
Branch: master
Commit: 8905bd92aa61ed5493844cbe65db4eedca6839c7
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=8905bd92aa61ed5493844cbe65db4eedca6839c7

Author: Piotr Caban <piotr at codeweavers.com>
Date:   Thu Apr  5 23:13:51 2018 +0200

msvcrt: Support "China" country name in setlocale function.

Signed-off-by: Piotr Caban <piotr at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/msvcrt/locale.c       | 3 +++
 dlls/msvcrt/tests/locale.c | 2 --
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/dlls/msvcrt/locale.c b/dlls/msvcrt/locale.c
index 088e1b7..6314840 100644
--- a/dlls/msvcrt/locale.c
+++ b/dlls/msvcrt/locale.c
@@ -249,6 +249,9 @@ LCID MSVCRT_locale_to_LCID(const char *locale, unsigned short *codepage)
     if(!search.search_country[0] && !search.search_codepage[0])
         remap_synonym(search.search_language);
 
+    if(!strcasecmp(search.search_country, "China"))
+        strcpy(search.search_country, "People's Republic of China");
+
     EnumResourceLanguagesA(GetModuleHandleA("KERNEL32"), (LPSTR)RT_STRING,
             (LPCSTR)LOCALE_ILANGUAGE,find_best_locale_proc,
             (LONG_PTR)&search);
diff --git a/dlls/msvcrt/tests/locale.c b/dlls/msvcrt/tests/locale.c
index ea42385..5e6d172 100644
--- a/dlls/msvcrt/tests/locale.c
+++ b/dlls/msvcrt/tests/locale.c
@@ -144,12 +144,10 @@ static void test_setlocale(void)
         || broken(!strcmp(ret, "Chinese_Taiwan.950")), "ret = %s\n", ret);
 
     ret = setlocale(LC_ALL, "Chinese_China.936");
-todo_wine
     ok(ret != NULL || broken (ret == NULL), "ret == NULL\n");
     if(ret)
     {
         trace("Chinese_China.936=%s\n", ret);
-todo_wine
         ok(!strcmp(ret, "Chinese (Simplified)_People's Republic of China.936") /* Vista - Win7 */
         || !strcmp(ret, "Chinese (Simplified)_China.936") /* Win8 - Win10 */
         || broken(!strcmp(ret, "Chinese_People's Republic of China.936")), "ret = %s\n", ret);




More information about the wine-cvs mailing list