From: Jeff Smith Subject: [RFC PATCH 8/9] msvcrt: Add functions to fetch _pwctype table. Message-Id: <20200109065349.2549777-8-whydoubt@gmail.com> Date: Thu, 9 Jan 2020 00:53:48 -0600 In-Reply-To: <20200109065349.2549777-1-whydoubt@gmail.com> References: <20200109065349.2549777-1-whydoubt@gmail.com> Signed-off-by: Jeff Smith --- .../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