[PATCH v2 3/3] msvcrt: Add _snprintf_s_l.
Gijs Vermeulen
gijsvrm at gmail.com
Wed Sep 16 11:01:41 CDT 2020
Signed-off-by: Gijs Vermeulen <gijsvrm at gmail.com>
---
dlls/msvcr100/msvcr100.spec | 2 +-
dlls/msvcr110/msvcr110.spec | 2 +-
dlls/msvcr120/msvcr120.spec | 2 +-
dlls/msvcr120_app/msvcr120_app.spec | 2 +-
dlls/msvcr80/msvcr80.spec | 2 +-
dlls/msvcr90/msvcr90.spec | 2 +-
dlls/msvcrt/msvcrt.spec | 2 +-
dlls/msvcrt/wcs.c | 14 ++++++++++++++
8 files changed, 21 insertions(+), 7 deletions(-)
diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec
index 4e6041e81e..577fb69b5a 100644
--- a/dlls/msvcr100/msvcr100.spec
+++ b/dlls/msvcr100/msvcr100.spec
@@ -1297,7 +1297,7 @@
@ varargs _snprintf_c_l(ptr long str ptr) MSVCRT_snprintf_c_l
@ varargs _snprintf_l(ptr long str ptr) MSVCRT__snprintf_l
@ varargs _snprintf_s(ptr long long str) MSVCRT__snprintf_s
-@ stub _snprintf_s_l
+@ varargs _snprintf_s_l(ptr long long str ptr) MSVCRT_snprintf_s_l
@ varargs _snscanf(str long str) MSVCRT__snscanf
@ varargs _snscanf_l(str long str ptr) MSVCRT__snscanf_l
@ varargs _snscanf_s(str long str) MSVCRT__snscanf_s
diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec
index d8e6ffac2c..97edbec6a7 100644
--- a/dlls/msvcr110/msvcr110.spec
+++ b/dlls/msvcr110/msvcr110.spec
@@ -1654,7 +1654,7 @@
@ varargs _snprintf_c_l(ptr long str ptr) MSVCRT_snprintf_c_l
@ varargs _snprintf_l(ptr long str ptr) MSVCRT__snprintf_l
@ varargs _snprintf_s(ptr long long str) MSVCRT__snprintf_s
-@ stub _snprintf_s_l
+@ varargs _snprintf_s_l(ptr long long str ptr) MSVCRT_snprintf_s_l
@ varargs _snscanf(str long str) MSVCRT__snscanf
@ varargs _snscanf_l(str long str ptr) MSVCRT__snscanf_l
@ varargs _snscanf_s(str long str) MSVCRT__snscanf_s
diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec
index 168ac8b332..1aa63de64a 100644
--- a/dlls/msvcr120/msvcr120.spec
+++ b/dlls/msvcr120/msvcr120.spec
@@ -1665,7 +1665,7 @@
@ varargs _snprintf_c_l(ptr long str ptr) MSVCRT_snprintf_c_l
@ varargs _snprintf_l(ptr long str ptr) MSVCRT__snprintf_l
@ varargs _snprintf_s(ptr long long str) MSVCRT__snprintf_s
-@ stub _snprintf_s_l
+@ varargs _snprintf_s_l(ptr long long str ptr) MSVCRT_snprintf_s_l
@ varargs _snscanf(str long str) MSVCRT__snscanf
@ varargs _snscanf_l(str long str ptr) MSVCRT__snscanf_l
@ varargs _snscanf_s(str long str) MSVCRT__snscanf_s
diff --git a/dlls/msvcr120_app/msvcr120_app.spec b/dlls/msvcr120_app/msvcr120_app.spec
index be0d87776d..2013b06cc7 100644
--- a/dlls/msvcr120_app/msvcr120_app.spec
+++ b/dlls/msvcr120_app/msvcr120_app.spec
@@ -1384,7 +1384,7 @@
@ varargs _snprintf_c_l(ptr long str ptr) msvcr120._snprintf_c_l
@ varargs _snprintf_l(ptr long str ptr) msvcr120._snprintf_l
@ varargs _snprintf_s(ptr long long str) msvcr120._snprintf_s
-@ stub _snprintf_s_l
+@ varargs _snprintf_s_l(ptr long long str ptr) msvcr120._snprintf_s_l
@ varargs _snscanf(str long str) msvcr120._snscanf
@ varargs _snscanf_l(str long str ptr) msvcr120._snscanf_l
@ varargs _snscanf_s(str long str) msvcr120._snscanf_s
diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec
index 539c548aff..a31943e4d7 100644
--- a/dlls/msvcr80/msvcr80.spec
+++ b/dlls/msvcr80/msvcr80.spec
@@ -977,7 +977,7 @@
@ varargs _snprintf_c_l(ptr long str ptr) MSVCRT_snprintf_c_l
@ varargs _snprintf_l(ptr long str ptr) MSVCRT__snprintf_l
@ varargs _snprintf_s(ptr long long str) MSVCRT__snprintf_s
-@ stub _snprintf_s_l
+@ varargs _snprintf_s_l(ptr long long str ptr) MSVCRT_snprintf_s_l
@ varargs _snscanf(str long str) MSVCRT__snscanf
@ varargs _snscanf_l(str long str ptr) MSVCRT__snscanf_l
@ varargs _snscanf_s(str long str) MSVCRT__snscanf_s
diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec
index 1a7964a415..ff58757cb8 100644
--- a/dlls/msvcr90/msvcr90.spec
+++ b/dlls/msvcr90/msvcr90.spec
@@ -952,7 +952,7 @@
@ varargs _snprintf_c_l(ptr long str ptr) MSVCRT_snprintf_c_l
@ varargs _snprintf_l(ptr long str ptr) MSVCRT__snprintf_l
@ varargs _snprintf_s(ptr long long str) MSVCRT__snprintf_s
-@ stub _snprintf_s_l
+@ varargs _snprintf_s_l(ptr long long str ptr) MSVCRT_snprintf_s_l
@ varargs _snscanf(str long str) MSVCRT__snscanf
@ varargs _snscanf_l(str long str ptr) MSVCRT__snscanf_l
@ varargs _snscanf_s(str long str) MSVCRT__snscanf_s
diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec
index 6710c14245..6da32d025d 100644
--- a/dlls/msvcrt/msvcrt.spec
+++ b/dlls/msvcrt/msvcrt.spec
@@ -913,7 +913,7 @@
@ varargs _snprintf_c_l(ptr long str ptr) MSVCRT_snprintf_c_l
@ varargs _snprintf_l(ptr long str ptr) MSVCRT__snprintf_l
@ varargs _snprintf_s(ptr long long str) MSVCRT__snprintf_s
-# stub _snprintf_s_l(ptr long long str ptr)
+@ varargs _snprintf_s_l(ptr long long str ptr) MSVCRT_snprintf_s_l
@ varargs _snscanf(str long str) MSVCRT__snscanf
@ varargs _snscanf_l(str long str ptr) MSVCRT__snscanf_l
@ varargs _snscanf_s(str long str) MSVCRT__snscanf_s
diff --git a/dlls/msvcrt/wcs.c b/dlls/msvcrt/wcs.c
index 4e73169647..12de48b194 100644
--- a/dlls/msvcrt/wcs.c
+++ b/dlls/msvcrt/wcs.c
@@ -1203,6 +1203,20 @@ int WINAPIV MSVCRT_snprintf_c(char *str, unsigned int count, const char *format,
return retval;
}
+/*********************************************************************
+ * _snprintf_s_l (MSVCRT.@)
+ */
+int WINAPIV MSVCRT_snprintf_s_l(char *str, unsigned int len, unsigned int count,
+ const char *format, MSVCRT__locale_t locale, ...)
+{
+ int retval;
+ __ms_va_list valist;
+ __ms_va_start(valist, locale);
+ retval = MSVCRT_vsnprintf_s_l(str, len, count, format, locale, valist);
+ __ms_va_end(valist);
+ return retval;
+}
+
/*********************************************************************
* _snprintf_s (MSVCRT.@)
*/
--
2.28.0
More information about the wine-devel
mailing list