Piotr Caban : msvcrt: Add _ismbcdigit_l implementation.
Alexandre Julliard
julliard at winehq.org
Thu Jul 16 19:01:22 CDT 2020
Module: wine
Branch: master
Commit: fd74aeb726e65c62a9e110bdbf282549cb8afce0
URL: https://source.winehq.org/git/wine.git/?a=commit;h=fd74aeb726e65c62a9e110bdbf282549cb8afce0
Author: Piotr Caban <piotr at codeweavers.com>
Date: Thu Jul 16 15:32:58 2020 +0200
msvcrt: Add _ismbcdigit_l implementation.
Signed-off-by: Piotr Caban <piotr at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at 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
More information about the wine-cvs
mailing list