From: Nikolay Sivov Subject: [PATCH 2/3] msvcrt: Add _ismbcl1_l(). Message-Id: <20190214075605.13347-2-nsivov@codeweavers.com> Date: Thu, 14 Feb 2019 10:56:04 +0300 In-Reply-To: <20190214075605.13347-1-nsivov@codeweavers.com> References: <20190214075605.13347-1-nsivov@codeweavers.com> Signed-off-by: Nikolay Sivov --- .../api-ms-win-crt-multibyte-l1-1-0.spec | 2 +- dlls/msvcr100/msvcr100.spec | 2 +- dlls/msvcr110/msvcr110.spec | 2 +- dlls/msvcr120/msvcr120.spec | 2 +- dlls/msvcr80/msvcr80.spec | 2 +- dlls/msvcr90/msvcr90.spec | 2 +- dlls/msvcrt/mbcs.c | 21 +++++++++++++++++++ dlls/msvcrt/msvcrt.spec | 2 +- dlls/ucrtbase/ucrtbase.spec | 2 +- 9 files changed, 29 insertions(+), 8 deletions(-) diff --git a/dlls/api-ms-win-crt-multibyte-l1-1-0/api-ms-win-crt-multibyte-l1-1-0.spec b/dlls/api-ms-win-crt-multibyte-l1-1-0/api-ms-win-crt-multibyte-l1-1-0.spec index 3ea8b3c470..6b3aabdf47 100644 --- a/dlls/api-ms-win-crt-multibyte-l1-1-0/api-ms-win-crt-multibyte-l1-1-0.spec +++ b/dlls/api-ms-win-crt-multibyte-l1-1-0/api-ms-win-crt-multibyte-l1-1-0.spec @@ -41,7 +41,7 @@ @ cdecl _ismbcl0(long) ucrtbase._ismbcl0 @ cdecl _ismbcl0_l(long ptr) ucrtbase._ismbcl0_l @ cdecl _ismbcl1(long) ucrtbase._ismbcl1 -@ stub _ismbcl1_l +@ cdecl _ismbcl1_l(long ptr) ucrtbase._ismbcl1_l @ cdecl _ismbcl2(long) ucrtbase._ismbcl2 @ stub _ismbcl2_l @ cdecl _ismbclegal(long) ucrtbase._ismbclegal diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec index 6973090cb3..9f74447e31 100644 --- a/dlls/msvcr100/msvcr100.spec +++ b/dlls/msvcr100/msvcr100.spec @@ -989,7 +989,7 @@ @ cdecl _ismbcl0(long) @ cdecl _ismbcl0_l(long ptr) @ stub _ismbcl1(long) -@ stub _ismbcl1_l +@ cdecl _ismbcl1_l(long ptr) @ stub _ismbcl2(long) @ stub _ismbcl2_l @ cdecl _ismbclegal(long) diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec index f37380787d..70a74646ee 100644 --- a/dlls/msvcr110/msvcr110.spec +++ b/dlls/msvcr110/msvcr110.spec @@ -1335,7 +1335,7 @@ @ cdecl _ismbcl0(long) @ cdecl _ismbcl0_l(long ptr) @ stub _ismbcl1(long) -@ stub _ismbcl1_l +@ cdecl _ismbcl1_l(long ptr) @ stub _ismbcl2(long) @ stub _ismbcl2_l @ cdecl _ismbclegal(long) diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec index 43426bef34..b22b058c61 100644 --- a/dlls/msvcr120/msvcr120.spec +++ b/dlls/msvcr120/msvcr120.spec @@ -1340,7 +1340,7 @@ @ cdecl _ismbcl0(long) @ cdecl _ismbcl0_l(long ptr) @ stub _ismbcl1(long) -@ stub _ismbcl1_l +@ cdecl _ismbcl1_l(long ptr) @ stub _ismbcl2(long) @ stub _ismbcl2_l @ cdecl _ismbclegal(long) diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec index c15d317923..93347fd4b5 100644 --- a/dlls/msvcr80/msvcr80.spec +++ b/dlls/msvcr80/msvcr80.spec @@ -661,7 +661,7 @@ @ cdecl _ismbcl0(long) @ cdecl _ismbcl0_l(long ptr) @ stub _ismbcl1(long) -@ stub _ismbcl1_l +@ cdecl _ismbcl1_l(long ptr) @ stub _ismbcl2(long) @ stub _ismbcl2_l @ cdecl _ismbclegal(long) diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec index 35e75d69dd..dd7205256d 100644 --- a/dlls/msvcr90/msvcr90.spec +++ b/dlls/msvcr90/msvcr90.spec @@ -639,7 +639,7 @@ @ cdecl _ismbcl0(long) @ cdecl _ismbcl0_l(long ptr) @ stub _ismbcl1(long) -@ stub _ismbcl1_l +@ cdecl _ismbcl1_l(long ptr) @ stub _ismbcl2(long) @ stub _ismbcl2_l @ cdecl _ismbclegal(long) diff --git a/dlls/msvcrt/mbcs.c b/dlls/msvcrt/mbcs.c index 16905f95b5..ab16dad149 100644 --- a/dlls/msvcrt/mbcs.c +++ b/dlls/msvcrt/mbcs.c @@ -2550,6 +2550,27 @@ int CDECL _ismbcl0_l(unsigned int c, MSVCRT__locale_t locale) return 0; } +/********************************************************************* + * _ismbcl1_l (MSVCRT.@) + */ +int CDECL _ismbcl1_l(unsigned int c, MSVCRT__locale_t locale) +{ + MSVCRT_pthreadmbcinfo mbcinfo; + + if(!locale) + mbcinfo = get_mbcinfo(); + else + mbcinfo = locale->mbcinfo; + + if(mbcinfo->mbcodepage == 932) + { + /* JIS level-1 */ + return c >= 0x889f && c <= 0x9872; + } + + return 0; +} + /********************************************************************* * _ismbcl0 (MSVCRT.@) */ diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec index 10e231b01e..19ffee579b 100644 --- a/dlls/msvcrt/msvcrt.spec +++ b/dlls/msvcrt/msvcrt.spec @@ -610,7 +610,7 @@ @ cdecl _ismbcl0(long) @ cdecl _ismbcl0_l(long ptr) @ stub _ismbcl1(long) -# stub _ismbcl1_l(long ptr) +@ cdecl _ismbcl1_l(long ptr) @ stub _ismbcl2(long) # stub _ismbcl2_l(long ptr) @ cdecl _ismbclegal(long) diff --git a/dlls/ucrtbase/ucrtbase.spec b/dlls/ucrtbase/ucrtbase.spec index 6426eafdea..32ddb44575 100644 --- a/dlls/ucrtbase/ucrtbase.spec +++ b/dlls/ucrtbase/ucrtbase.spec @@ -479,7 +479,7 @@ @ cdecl _ismbcl0(long) @ cdecl _ismbcl0_l(long ptr) @ stub _ismbcl1(long) -@ stub _ismbcl1_l +@ cdecl _ismbcl1_l(long ptr) @ stub _ismbcl2(long) @ stub _ismbcl2_l @ cdecl _ismbclegal(long) -- 2.20.1