Module: wine Branch: master Commit: fd74aeb726e65c62a9e110bdbf282549cb8afce0 URL: https://source.winehq.org/git/wine.git/?a=commit;h=fd74aeb726e65c62a9e110bdb...
Author: Piotr Caban piotr@codeweavers.com Date: Thu Jul 16 15:32:58 2020 +0200
msvcrt: Add _ismbcdigit_l implementation.
Signed-off-by: Piotr Caban piotr@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
.../api-ms-win-crt-multibyte-l1-1-0.spec | 2 +- .../api-ms-win-crt-private-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 | 11 +++++++++-- dlls/msvcrt/msvcrt.h | 1 + dlls/msvcrt/msvcrt.spec | 2 +- dlls/ucrtbase/ucrtbase.spec | 4 ++-- 11 files changed, 20 insertions(+), 12 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 991ad90a92..06467a76d2 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 @@ -31,7 +31,7 @@ @ stub _ismbcblank @ stub _ismbcblank_l @ cdecl _ismbcdigit(long) ucrtbase._ismbcdigit -@ stub _ismbcdigit_l +@ cdecl _ismbcdigit_l(long ptr) ucrtbase._ismbcdigit_l @ cdecl _ismbcgraph(long) ucrtbase._ismbcgraph @ stub _ismbcgraph_l @ cdecl _ismbchira(long) ucrtbase._ismbchira diff --git a/dlls/api-ms-win-crt-private-l1-1-0/api-ms-win-crt-private-l1-1-0.spec b/dlls/api-ms-win-crt-private-l1-1-0/api-ms-win-crt-private-l1-1-0.spec index afcac3bacb..90ae182635 100644 --- a/dlls/api-ms-win-crt-private-l1-1-0/api-ms-win-crt-private-l1-1-0.spec +++ b/dlls/api-ms-win-crt-private-l1-1-0/api-ms-win-crt-private-l1-1-0.spec @@ -404,7 +404,7 @@ @ stub _o__ismbcblank @ stub _o__ismbcblank_l @ cdecl _o__ismbcdigit(long) ucrtbase._o__ismbcdigit -@ stub _o__ismbcdigit_l +@ cdecl _o__ismbcdigit_l(long ptr) ucrtbase._o__ismbcdigit_l @ cdecl _o__ismbcgraph(long) ucrtbase._o__ismbcgraph @ stub _o__ismbcgraph_l @ cdecl _o__ismbchira(long) ucrtbase._o__ismbchira diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec index acf8601def..6a0a54aee2 100644 --- a/dlls/msvcr100/msvcr100.spec +++ b/dlls/msvcr100/msvcr100.spec @@ -979,7 +979,7 @@ @ cdecl _ismbcalpha(long) @ stub _ismbcalpha_l @ cdecl _ismbcdigit(long) -@ stub _ismbcdigit_l +@ cdecl _ismbcdigit_l(long ptr) @ cdecl _ismbcgraph(long) @ stub _ismbcgraph_l @ cdecl _ismbchira(long) diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec index 477b5a4a00..a2e63aab46 100644 --- a/dlls/msvcr110/msvcr110.spec +++ b/dlls/msvcr110/msvcr110.spec @@ -1325,7 +1325,7 @@ @ cdecl _ismbcalpha(long) @ stub _ismbcalpha_l @ cdecl _ismbcdigit(long) -@ stub _ismbcdigit_l +@ cdecl _ismbcdigit_l(long ptr) @ cdecl _ismbcgraph(long) @ stub _ismbcgraph_l @ cdecl _ismbchira(long) diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec index b3207ad086..073741e76f 100644 --- a/dlls/msvcr120/msvcr120.spec +++ b/dlls/msvcr120/msvcr120.spec @@ -1330,7 +1330,7 @@ @ stub _ismbcblank @ stub _ismbcblank_l @ cdecl _ismbcdigit(long) -@ stub _ismbcdigit_l +@ cdecl _ismbcdigit_l(long ptr) @ cdecl _ismbcgraph(long) @ stub _ismbcgraph_l @ cdecl _ismbchira(long) diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec index fa6c7186f7..5280a38b87 100644 --- a/dlls/msvcr80/msvcr80.spec +++ b/dlls/msvcr80/msvcr80.spec @@ -651,7 +651,7 @@ @ cdecl _ismbcalpha(long) @ stub _ismbcalpha_l @ cdecl _ismbcdigit(long) -@ stub _ismbcdigit_l +@ cdecl _ismbcdigit_l(long ptr) @ cdecl _ismbcgraph(long) @ stub _ismbcgraph_l @ cdecl _ismbchira(long) diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec index 566e9431be..fefcfa76b0 100644 --- a/dlls/msvcr90/msvcr90.spec +++ b/dlls/msvcr90/msvcr90.spec @@ -629,7 +629,7 @@ @ cdecl _ismbcalpha(long) @ stub _ismbcalpha_l @ cdecl _ismbcdigit(long) -@ stub _ismbcdigit_l +@ cdecl _ismbcdigit_l(long ptr) @ cdecl _ismbcgraph(long) @ stub _ismbcgraph_l @ cdecl _ismbchira(long) diff --git a/dlls/msvcrt/mbcs.c b/dlls/msvcrt/mbcs.c index 5b07e13bba..c6caab19f8 100644 --- a/dlls/msvcrt/mbcs.c +++ b/dlls/msvcrt/mbcs.c @@ -1427,13 +1427,20 @@ int CDECL _ismbbkana(unsigned int c) return _ismbbkana_l( c, NULL ); }
+/********************************************************************* + * _ismbcdigit_l(MSVCRT.@) + */ +int CDECL _ismbcdigit_l(unsigned int ch, MSVCRT__locale_t locale) +{ + return MSVCRT__iswdigit_l( msvcrt_mbc_to_wc_l(ch, locale), locale ); +} + /********************************************************************* * _ismbcdigit(MSVCRT.@) */ int CDECL _ismbcdigit(unsigned int ch) { - MSVCRT_wchar_t wch = msvcrt_mbc_to_wc( ch ); - return (get_char_typeW( wch ) & C1_DIGIT); + return _ismbcdigit_l( ch, NULL ); }
/********************************************************************* diff --git a/dlls/msvcrt/msvcrt.h b/dlls/msvcrt/msvcrt.h index a0fbeb7ebe..973b928888 100644 --- a/dlls/msvcrt/msvcrt.h +++ b/dlls/msvcrt/msvcrt.h @@ -1202,6 +1202,7 @@ int __cdecl MSVCRT__wcsnicmp(const MSVCRT_wchar_t*, const MSVCRT_wchar_t*, MSVCR int __cdecl MSVCRT_towlower(MSVCRT_wint_t); int __cdecl MSVCRT_towupper(MSVCRT_wint_t); int __cdecl MSVCRT__iswalnum_l(MSVCRT_wchar_t, MSVCRT__locale_t); +int __cdecl MSVCRT__iswdigit_l(MSVCRT_wchar_t, MSVCRT__locale_t);
/* Maybe one day we'll enable the invalid parameter handlers with the full set of information (msvcrXXd) * #define MSVCRT_INVALID_PMT(x) MSVCRT_call_invalid_parameter_handler(x, __FUNCTION__, __FILE__, __LINE__, 0) diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec index dc3048469d..273ced9cd7 100644 --- a/dlls/msvcrt/msvcrt.spec +++ b/dlls/msvcrt/msvcrt.spec @@ -597,7 +597,7 @@ @ cdecl _ismbcalpha(long) # stub _ismbcalpha_l(long ptr) @ cdecl _ismbcdigit(long) -# stub _ismbcdigit_l(long ptr) +@ cdecl _ismbcdigit_l(long ptr) @ cdecl _ismbcgraph(long) # stub _ismbcgraph_l(long ptr) @ cdecl _ismbchira(long) diff --git a/dlls/ucrtbase/ucrtbase.spec b/dlls/ucrtbase/ucrtbase.spec index b6d3a033e5..9bd4832443 100644 --- a/dlls/ucrtbase/ucrtbase.spec +++ b/dlls/ucrtbase/ucrtbase.spec @@ -469,7 +469,7 @@ @ stub _ismbcblank @ stub _ismbcblank_l @ cdecl _ismbcdigit(long) -@ stub _ismbcdigit_l +@ cdecl _ismbcdigit_l(long ptr) @ cdecl _ismbcgraph(long) @ stub _ismbcgraph_l @ cdecl _ismbchira(long) @@ -1068,7 +1068,7 @@ @ stub _o__ismbcblank @ stub _o__ismbcblank_l @ cdecl _o__ismbcdigit(long) _ismbcdigit -@ stub _o__ismbcdigit_l +@ cdecl _o__ismbcdigit_l(long ptr) _ismbcdigit_l @ cdecl _o__ismbcgraph(long) _ismbcgraph @ stub _o__ismbcgraph_l @ cdecl _o__ismbchira(long) _ismbchira