Jacek Caban : stdio.h: Add ucrt _scprintf declaration.

Alexandre Julliard julliard at winehq.org
Fri Feb 21 15:27:06 CST 2020


Module: wine
Branch: master
Commit: 9bfd4652368fd72613533eda58af891e04fa34bf
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=9bfd4652368fd72613533eda58af891e04fa34bf

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Fri Feb 21 16:40:38 2020 +0100

stdio.h: Add ucrt _scprintf declaration.

Signed-off-by: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/msvcp90/msvcp_main.c | 10 ----------
 include/msvcrt/stdio.h    | 15 +++++++++++++--
 2 files changed, 13 insertions(+), 12 deletions(-)

diff --git a/dlls/msvcp90/msvcp_main.c b/dlls/msvcp90/msvcp_main.c
index b6375f71dc..82bbf84c25 100644
--- a/dlls/msvcp90/msvcp_main.c
+++ b/dlls/msvcp90/msvcp_main.c
@@ -114,16 +114,6 @@ void __cdecl _invalid_parameter(const wchar_t *expr, const wchar_t *func, const
 {
    _invalid_parameter_noinfo();
 }
-
-int WINAPIV _scprintf(const char* fmt, ...)
-{
-    int ret;
-    __ms_va_list valist;
-    __ms_va_start(valist, fmt);
-    ret = _vsnprintf(NULL, 0, fmt, valist);
-    __ms_va_end(valist);
-    return ret;
-}
 #endif
 
 static void init_cxx_funcs(void)
diff --git a/include/msvcrt/stdio.h b/include/msvcrt/stdio.h
index be8c1e485f..0fc374b06e 100644
--- a/include/msvcrt/stdio.h
+++ b/include/msvcrt/stdio.h
@@ -87,7 +87,6 @@ int    __cdecl _setmaxstdio(int);
 int    WINAPIV _snprintf_s(char*,size_t,size_t,const char*,...);
 char*  __cdecl _tempnam(const char*,const char*);
 int    __cdecl _unlink(const char*);
-int    WINAPIV _scprintf(const char*,...);
 
 size_t __cdecl _fread_nolock(void*,size_t,size_t,FILE*);
 size_t __cdecl _fread_nolock_s(void*,size_t,size_t,size_t,FILE*);
@@ -147,7 +146,6 @@ int    WINAPIV scanf_s(const char*,...);
 void   __cdecl setbuf(FILE*,char*);
 int    __cdecl setvbuf(FILE*,char*,int,size_t);
 int    WINAPIV sprintf_s(char*,size_t,const char*,...);
-int    WINAPIV _scprintf(const char *, ...);
 int    WINAPIV sscanf(const char*,const char*,...);
 int    WINAPIV sscanf_s(const char*,const char*,...);
 int    WINAPIV _snscanf_l(const char*,size_t,const char*,_locale_t,...);
@@ -195,6 +193,18 @@ static inline int __cdecl _vscprintf(const char *format, __ms_va_list args)
     return ret < 0 ? -1 : ret;
 }
 
+static inline int WINAPIV _scprintf(const char *format, ...)
+{
+    int ret;
+    __ms_va_list args;
+
+    __ms_va_start(args, format);
+    ret = __stdio_common_vsprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR,
+                                  NULL, 0, format, NULL, args);
+    __ms_va_end(args);
+    return ret;
+}
+
 static inline int __cdecl vsprintf(char *buffer, const char *format, __ms_va_list args)
 {
     int ret = __stdio_common_vsprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_LEGACY_VSPRINTF_NULL_TERMINATION,
@@ -226,6 +236,7 @@ static inline int __cdecl vfprintf_s(FILE *file, const char *format, __ms_va_lis
 
 #else /* _UCRT */
 
+_ACRTIMP int WINAPIV _scprintf(const char *,...);
 _ACRTIMP int __cdecl _vscprintf(const char*,__ms_va_list);
 _ACRTIMP int __cdecl _vsnprintf_s(char*,size_t,size_t,const char*,__ms_va_list);
 _ACRTIMP int __cdecl _vsprintf_p_l(char*,size_t,const char*,_locale_t,__ms_va_list);




More information about the wine-cvs mailing list