[RFC PATCH 8/9] msvcrt: Add functions to fetch _pwctype table.
Jeff Smith
whydoubt at gmail.com
Thu Jan 9 00:53:48 CST 2020
Signed-off-by: Jeff Smith <whydoubt at gmail.com>
---
.../api-ms-win-crt-locale-l1-1-0.spec | 2 +-
dlls/msvcr100/msvcr100.spec | 4 ++--
dlls/msvcr110/msvcr110.spec | 4 ++--
dlls/msvcr120/msvcr120.spec | 4 ++--
dlls/msvcr120_app/msvcr120_app.spec | 2 +-
dlls/msvcr70/msvcr70.spec | 4 ++--
dlls/msvcr71/msvcr71.spec | 4 ++--
dlls/msvcr80/msvcr80.spec | 4 ++--
dlls/msvcr90/msvcr90.spec | 4 ++--
dlls/msvcrt/msvcrt.spec | 4 ++--
dlls/msvcrt/wcs.c | 16 ++++++++++++++++
dlls/msvcrtd/msvcrtd.spec | 2 +-
dlls/ucrtbase/ucrtbase.spec | 2 +-
13 files changed, 36 insertions(+), 20 deletions(-)
diff --git a/dlls/api-ms-win-crt-locale-l1-1-0/api-ms-win-crt-locale-l1-1-0.spec b/dlls/api-ms-win-crt-locale-l1-1-0/api-ms-win-crt-locale-l1-1-0.spec
index 12bbbe6133..dc2ec27220 100644
--- a/dlls/api-ms-win-crt-locale-l1-1-0/api-ms-win-crt-locale-l1-1-0.spec
+++ b/dlls/api-ms-win-crt-locale-l1-1-0/api-ms-win-crt-locale-l1-1-0.spec
@@ -5,7 +5,7 @@
@ cdecl ___mb_cur_max_l_func(ptr) ucrtbase.___mb_cur_max_l_func
@ cdecl __initialize_lconv_for_unsigned_char() ucrtbase.__initialize_lconv_for_unsigned_char
@ cdecl __pctype_func() ucrtbase.__pctype_func
-@ stub __pwctype_func
+@ cdecl __pwctype_func() ucrtbase.__pwctype_func
@ cdecl _configthreadlocale(long) ucrtbase._configthreadlocale
@ cdecl _create_locale(long str) ucrtbase._create_locale
@ cdecl _free_locale(ptr) ucrtbase._free_locale
diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec
index ca4081c4db..f5f2711f43 100644
--- a/dlls/msvcr100/msvcr100.spec
+++ b/dlls/msvcr100/msvcr100.spec
@@ -641,7 +641,7 @@
@ cdecl __p__mbctype()
@ cdecl __p__pctype() MSVCRT___p__pctype
@ cdecl __p__pgmptr() MSVCRT___p__pgmptr
-@ stub __p__pwctype()
+@ cdecl __p__pwctype() MSVCRT___p__pwctype
@ cdecl __p__timezone() MSVCRT___p__timezone
@ cdecl __p__tzname()
@ cdecl __p__wcmdln() MSVCRT___p__wcmdln
@@ -649,7 +649,7 @@
@ cdecl __p__wpgmptr() MSVCRT___p__wpgmptr
@ cdecl __pctype_func() MSVCRT___pctype_func
@ extern __pioinfo MSVCRT___pioinfo
-@ stub __pwctype_func
+@ cdecl __pwctype_func() MSVCRT___pwctype_func
@ cdecl __pxcptinfoptrs() MSVCRT___pxcptinfoptrs
@ stub __report_gsfailure
@ cdecl __set_app_type(long) MSVCRT___set_app_type
diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec
index b8403c7b95..52da18e39a 100644
--- a/dlls/msvcr110/msvcr110.spec
+++ b/dlls/msvcr110/msvcr110.spec
@@ -990,7 +990,7 @@
@ cdecl __p__mbctype()
@ cdecl __p__pctype() MSVCRT___p__pctype
@ cdecl __p__pgmptr() MSVCRT___p__pgmptr
-@ stub __p__pwctype()
+@ cdecl __p__pwctype() MSVCRT___p__pwctype
@ cdecl __p__timezone() MSVCRT___p__timezone
@ cdecl __p__tzname()
@ cdecl __p__wcmdln() MSVCRT___p__wcmdln
@@ -998,7 +998,7 @@
@ cdecl __p__wpgmptr() MSVCRT___p__wpgmptr
@ cdecl __pctype_func() MSVCRT___pctype_func
@ extern __pioinfo MSVCRT___pioinfo
-@ stub __pwctype_func
+@ cdecl __pwctype_func() MSVCRT___pwctype_func
@ cdecl __pxcptinfoptrs() MSVCRT___pxcptinfoptrs
@ stub __report_gsfailure
@ cdecl __set_app_type(long) MSVCRT___set_app_type
diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec
index 793814545d..279aed8fa8 100644
--- a/dlls/msvcr120/msvcr120.spec
+++ b/dlls/msvcr120/msvcr120.spec
@@ -980,7 +980,7 @@
@ cdecl __p__mbctype()
@ cdecl __p__pctype() MSVCRT___p__pctype
@ cdecl __p__pgmptr() MSVCRT___p__pgmptr
-@ stub __p__pwctype()
+@ cdecl __p__pwctype() MSVCRT___p__pwctype
@ cdecl __p__timezone() MSVCRT___p__timezone
@ cdecl __p__tzname()
@ cdecl __p__wcmdln() MSVCRT___p__wcmdln
@@ -988,7 +988,7 @@
@ cdecl __p__wpgmptr() MSVCRT___p__wpgmptr
@ cdecl __pctype_func() MSVCRT___pctype_func
@ extern __pioinfo MSVCRT___pioinfo
-@ stub __pwctype_func
+@ cdecl __pwctype_func() MSVCRT___pwctype_func
@ cdecl __pxcptinfoptrs() MSVCRT___pxcptinfoptrs
@ stub __report_gsfailure
@ cdecl __set_app_type(long) MSVCRT___set_app_type
diff --git a/dlls/msvcr120_app/msvcr120_app.spec b/dlls/msvcr120_app/msvcr120_app.spec
index 2805964d4c..29953c185e 100644
--- a/dlls/msvcr120_app/msvcr120_app.spec
+++ b/dlls/msvcr120_app/msvcr120_app.spec
@@ -960,7 +960,7 @@
@ cdecl __p__wpgmptr() msvcr120.__p__wpgmptr
@ cdecl __pctype_func() msvcr120.__pctype_func
@ extern __pioinfo msvcr120.__pioinfo
-@ stub __pwctype_func
+@ cdecl __pwctype_func() msvcr120.__pwctype_func
@ cdecl __pxcptinfoptrs() msvcr120.__pxcptinfoptrs
@ stub __report_gsfailure
@ extern __setlc_active msvcr120.__setlc_active
diff --git a/dlls/msvcr70/msvcr70.spec b/dlls/msvcr70/msvcr70.spec
index d3a4413def..d53e39b2e4 100644
--- a/dlls/msvcr70/msvcr70.spec
+++ b/dlls/msvcr70/msvcr70.spec
@@ -181,7 +181,7 @@
@ cdecl __p__osver()
@ cdecl __p__pctype() MSVCRT___p__pctype
@ cdecl __p__pgmptr() MSVCRT___p__pgmptr
-@ stub __p__pwctype()
+@ cdecl __p__pwctype() MSVCRT___p__pwctype
@ cdecl __p__timezone() MSVCRT___p__timezone
@ cdecl __p__tzname()
@ cdecl __p__wcmdln() MSVCRT___p__wcmdln
@@ -192,7 +192,7 @@
@ cdecl __p__wpgmptr() MSVCRT___p__wpgmptr
@ cdecl __pctype_func() MSVCRT___pctype_func
@ extern __pioinfo MSVCRT___pioinfo
-@ stub __pwctype_func
+@ cdecl __pwctype_func() MSVCRT___pwctype_func
@ cdecl __pxcptinfoptrs() MSVCRT___pxcptinfoptrs
@ cdecl __security_error_handler(long ptr)
@ cdecl __set_app_type(long) MSVCRT___set_app_type
diff --git a/dlls/msvcr71/msvcr71.spec b/dlls/msvcr71/msvcr71.spec
index 494f522505..2bc3651b62 100644
--- a/dlls/msvcr71/msvcr71.spec
+++ b/dlls/msvcr71/msvcr71.spec
@@ -176,7 +176,7 @@
@ cdecl __p__osver()
@ cdecl __p__pctype() MSVCRT___p__pctype
@ cdecl __p__pgmptr() MSVCRT___p__pgmptr
-@ stub __p__pwctype()
+@ cdecl __p__pwctype() MSVCRT___p__pwctype
@ cdecl __p__timezone() MSVCRT___p__timezone
@ cdecl __p__tzname()
@ cdecl __p__wcmdln() MSVCRT___p__wcmdln
@@ -187,7 +187,7 @@
@ cdecl __p__wpgmptr() MSVCRT___p__wpgmptr
@ cdecl __pctype_func() MSVCRT___pctype_func
@ extern __pioinfo MSVCRT___pioinfo
-@ stub __pwctype_func
+@ cdecl __pwctype_func() MSVCRT___pwctype_func
@ cdecl __pxcptinfoptrs() MSVCRT___pxcptinfoptrs
@ cdecl __security_error_handler(long ptr)
@ cdecl __set_app_type(long) MSVCRT___set_app_type
diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec
index 550d4432a8..70b1ff15a0 100644
--- a/dlls/msvcr80/msvcr80.spec
+++ b/dlls/msvcr80/msvcr80.spec
@@ -287,7 +287,7 @@
@ cdecl __p__osver()
@ cdecl __p__pctype() MSVCRT___p__pctype
@ cdecl __p__pgmptr() MSVCRT___p__pgmptr
-@ stub __p__pwctype()
+@ cdecl __p__pwctype() MSVCRT___p__pwctype
@ cdecl __p__timezone() MSVCRT___p__timezone
@ cdecl __p__tzname()
@ cdecl __p__wcmdln() MSVCRT___p__wcmdln
@@ -298,7 +298,7 @@
@ cdecl __p__wpgmptr() MSVCRT___p__wpgmptr
@ cdecl __pctype_func() MSVCRT___pctype_func
@ extern __pioinfo MSVCRT___pioinfo
-@ stub __pwctype_func
+@ cdecl __pwctype_func() MSVCRT___pwctype_func
@ cdecl __pxcptinfoptrs() MSVCRT___pxcptinfoptrs
@ stub __report_gsfailure
@ cdecl __set_app_type(long) MSVCRT___set_app_type
diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec
index 1280c7d901..ae2c733fa0 100644
--- a/dlls/msvcr90/msvcr90.spec
+++ b/dlls/msvcr90/msvcr90.spec
@@ -274,7 +274,7 @@
@ cdecl __p__mbctype()
@ cdecl __p__pctype() MSVCRT___p__pctype
@ cdecl __p__pgmptr() MSVCRT___p__pgmptr
-@ stub __p__pwctype()
+@ cdecl __p__pwctype() MSVCRT___p__pwctype
@ cdecl __p__timezone() MSVCRT___p__timezone
@ cdecl __p__tzname()
@ cdecl __p__wcmdln() MSVCRT___p__wcmdln
@@ -282,7 +282,7 @@
@ cdecl __p__wpgmptr() MSVCRT___p__wpgmptr
@ cdecl __pctype_func() MSVCRT___pctype_func
@ extern __pioinfo MSVCRT___pioinfo
-@ stub __pwctype_func
+@ cdecl __pwctype_func() MSVCRT___pwctype_func
@ cdecl __pxcptinfoptrs() MSVCRT___pxcptinfoptrs
@ stub __report_gsfailure
@ cdecl __set_app_type(long) MSVCRT___set_app_type
diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec
index 5d91891dcc..0c907a8278 100644
--- a/dlls/msvcrt/msvcrt.spec
+++ b/dlls/msvcrt/msvcrt.spec
@@ -265,7 +265,7 @@
@ cdecl -arch=i386 __p__osver()
@ cdecl -arch=i386 __p__pctype() MSVCRT___p__pctype
@ cdecl -arch=i386 __p__pgmptr() MSVCRT___p__pgmptr
-@ stub -arch=i386 __p__pwctype()
+@ cdecl -arch=i386 __p__pwctype() MSVCRT___p__pwctype
@ cdecl -arch=i386 __p__timezone() MSVCRT___p__timezone
@ cdecl -arch=i386 __p__tzname()
@ cdecl -arch=i386 __p__wcmdln() MSVCRT___p__wcmdln
@@ -276,7 +276,7 @@
@ cdecl -arch=i386 __p__wpgmptr() MSVCRT___p__wpgmptr
@ cdecl __pctype_func() MSVCRT___pctype_func
@ extern __pioinfo MSVCRT___pioinfo
-# stub __pwctype_func()
+@ cdecl __pwctype_func() MSVCRT___pwctype_func
@ cdecl __pxcptinfoptrs() MSVCRT___pxcptinfoptrs
@ cdecl __set_app_type(long) MSVCRT___set_app_type
@ extern __setlc_active MSVCRT___setlc_active
diff --git a/dlls/msvcrt/wcs.c b/dlls/msvcrt/wcs.c
index 32904ebb7e..87e658f509 100644
--- a/dlls/msvcrt/wcs.c
+++ b/dlls/msvcrt/wcs.c
@@ -100,6 +100,22 @@ WORD MSVCRT__wctype [257] = {
WORD *MSVCRT__pwctype = MSVCRT__wctype + 1;
+/*********************************************************************
+ * __p__pwctype (MSVCRT.@)
+ */
+WORD** CDECL MSVCRT___p__pwctype(void)
+{
+ return &MSVCRT__pwctype;
+}
+
+/*********************************************************************
+ * __pwctype_func (MSVCRT.@)
+ */
+const WORD* CDECL MSVCRT___pwctype_func(void)
+{
+ return MSVCRT__pwctype;
+}
+
#if _MSVCR_VER>=80
/*********************************************************************
diff --git a/dlls/msvcrtd/msvcrtd.spec b/dlls/msvcrtd/msvcrtd.spec
index 2bb1d3d3b0..80d3690d53 100644
--- a/dlls/msvcrtd/msvcrtd.spec
+++ b/dlls/msvcrtd/msvcrtd.spec
@@ -173,7 +173,7 @@
@ cdecl __p__osver()
@ cdecl __p__pctype() MSVCRT___p__pctype
@ cdecl __p__pgmptr() MSVCRT___p__pgmptr
-@ stub __p__pwctype()
+@ cdecl __p__pwctype() MSVCRT___p__pwctype
@ cdecl __p__timezone() MSVCRT___p__timezone
@ cdecl __p__tzname()
@ cdecl __p__wcmdln() MSVCRT___p__wcmdln
diff --git a/dlls/ucrtbase/ucrtbase.spec b/dlls/ucrtbase/ucrtbase.spec
index 8f174ee95a..d591ed8b84 100644
--- a/dlls/ucrtbase/ucrtbase.spec
+++ b/dlls/ucrtbase/ucrtbase.spec
@@ -136,7 +136,7 @@
@ cdecl __p__wpgmptr() MSVCRT___p__wpgmptr
@ cdecl __pctype_func() MSVCRT___pctype_func
@ cdecl __processing_throw()
-@ stub __pwctype_func
+@ cdecl __pwctype_func() MSVCRT___pwctype_func
@ cdecl __pxcptinfoptrs() MSVCRT___pxcptinfoptrs
@ stub __report_gsfailure
@ cdecl __setusermatherr(ptr) MSVCRT___setusermatherr
--
2.23.0
More information about the wine-devel
mailing list