diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec index d6c38f43ad1..91805eeddc4 100644 --- a/dlls/msvcr100/msvcr100.spec +++ b/dlls/msvcr100/msvcr100.spec @@ -1289,7 +1289,7 @@ @ varargs _snprintf(ptr long str) MSVCRT__snprintf @ stub _snprintf_c @ stub _snprintf_c_l -@ stub _snprintf_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 _snscanf(str long str) MSVCRT__snscanf diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec index 02b6497112e..5de69657cc8 100644 --- a/dlls/msvcr110/msvcr110.spec +++ b/dlls/msvcr110/msvcr110.spec @@ -1647,7 +1647,7 @@ @ varargs _snprintf(ptr long str) MSVCRT__snprintf @ stub _snprintf_c @ stub _snprintf_c_l -@ stub _snprintf_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 _snscanf(str long str) MSVCRT__snscanf diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec index ce09f00c0de..b7f0a868b36 100644 --- a/dlls/msvcr80/msvcr80.spec +++ b/dlls/msvcr80/msvcr80.spec @@ -969,7 +969,7 @@ @ varargs _snprintf(ptr long str) MSVCRT__snprintf @ stub _snprintf_c @ stub _snprintf_c_l -@ stub _snprintf_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 _snscanf(str long str) MSVCRT__snscanf diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec index e4302cf4cd6..a8ad25ffb7b 100644 --- a/dlls/msvcr90/msvcr90.spec +++ b/dlls/msvcr90/msvcr90.spec @@ -944,7 +944,7 @@ @ varargs _snprintf(ptr long str) MSVCRT__snprintf @ stub _snprintf_c @ stub _snprintf_c_l -@ stub _snprintf_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 _snscanf(str long str) MSVCRT__snscanf diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec index f376db39eaf..37046c3d4f5 100644 --- a/dlls/msvcrt/msvcrt.spec +++ b/dlls/msvcrt/msvcrt.spec @@ -912,7 +912,7 @@ @ varargs _snprintf(ptr long str) MSVCRT__snprintf # stub _snprintf_c(ptr long str) # stub _snprintf_c_l(ptr long str ptr) -# stub _snprintf_l(ptr long str ptr) +@ 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 _snscanf(str long str) MSVCRT__snscanf diff --git a/dlls/msvcrt/wcs.c b/dlls/msvcrt/wcs.c index 4123d06de06..a6a4fe71aff 100644 --- a/dlls/msvcrt/wcs.c +++ b/dlls/msvcrt/wcs.c @@ -817,6 +817,20 @@ int CDECL MSVCRT__snprintf(char *str, unsigned int len, const char *format, ...) return retval; } +/********************************************************************* + * _snprintf_l (MSVCRT.@) + */ +int CDECL MSVCRT__snprintf_l(char *str, unsigned int count, MSVCRT__locale_t locale, + const char *format, ...) +{ + int retval; + __ms_va_list valist; + __ms_va_start(valist, format); + retval = MSVCRT_vsnprintf_l(str, count, format, locale, valist); + __ms_va_end(valist); + return retval; +} + /********************************************************************* * _snprintf_s (MSVCRT.@) */