From: Bartosz Kosiorek gang65@poczta.onet.pl
--- 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/file.c | 21 +++++++++++++++++---- dlls/msvcrt/msvcrt.spec | 2 +- 8 files changed, 24 insertions(+), 11 deletions(-)
diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec index 4be6144ca7e..1cbf9b31fee 100644 --- a/dlls/msvcr100/msvcr100.spec +++ b/dlls/msvcr100/msvcr100.spec @@ -827,7 +827,7 @@ @ cdecl -arch=!i386 _fpclassf(float) @ cdecl -arch=i386,x86_64,arm,arm64 _fpieee_flt(long ptr ptr) @ cdecl _fpreset() -@ stub _fprintf_l +@ varargs _fprintf_l(ptr str ptr) @ stub _fprintf_p @ stub _fprintf_p_l @ stub _fprintf_s_l diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec index aee92ec232f..92f7bb2f859 100644 --- a/dlls/msvcr110/msvcr110.spec +++ b/dlls/msvcr110/msvcr110.spec @@ -1174,7 +1174,7 @@ @ cdecl -arch=!i386 _fpclassf(float) @ cdecl -arch=i386,x86_64,arm,arm64 _fpieee_flt(long ptr ptr) @ cdecl _fpreset() -@ stub _fprintf_l +@ varargs _fprintf_l(ptr str ptr) @ stub _fprintf_p @ stub _fprintf_p_l @ stub _fprintf_s_l diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec index 6c0d560b67f..2a0fa15cc01 100644 --- a/dlls/msvcr120/msvcr120.spec +++ b/dlls/msvcr120/msvcr120.spec @@ -1175,7 +1175,7 @@ @ cdecl -arch=!i386 _fpclassf(float) @ cdecl -arch=i386,x86_64,arm,arm64 _fpieee_flt(long ptr ptr) @ cdecl _fpreset() -@ stub _fprintf_l +@ varargs _fprintf_l(ptr str ptr) @ stub _fprintf_p @ stub _fprintf_p_l @ stub _fprintf_s_l diff --git a/dlls/msvcr120_app/msvcr120_app.spec b/dlls/msvcr120_app/msvcr120_app.spec index aa5d8ccf968..633991fcc54 100644 --- a/dlls/msvcr120_app/msvcr120_app.spec +++ b/dlls/msvcr120_app/msvcr120_app.spec @@ -1104,7 +1104,7 @@ @ cdecl -arch=!i386 _fpclassf(float) msvcr120._fpclassf @ cdecl -arch=i386,x86_64,arm,arm64 _fpieee_flt(long ptr ptr) msvcr120._fpieee_flt @ cdecl _fpreset() msvcr120._fpreset -@ stub _fprintf_l +@ varargs _fprintf_l(ptr str ptr) msvcr120._fprintf_l @ stub _fprintf_p @ stub _fprintf_p_l @ stub _fprintf_s_l diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec index f3981ed3dea..695ff5857bb 100644 --- a/dlls/msvcr80/msvcr80.spec +++ b/dlls/msvcr80/msvcr80.spec @@ -493,7 +493,7 @@ @ cdecl -arch=!i386 _fpclassf(float) @ cdecl -arch=i386,x86_64,arm,arm64 _fpieee_flt(long ptr ptr) @ cdecl _fpreset() -@ stub _fprintf_l +@ varargs _fprintf_l(ptr str ptr) @ stub _fprintf_p @ stub _fprintf_p_l @ stub _fprintf_s_l diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec index 3e581b911e2..546efb0a4a7 100644 --- a/dlls/msvcr90/msvcr90.spec +++ b/dlls/msvcr90/msvcr90.spec @@ -476,7 +476,7 @@ @ cdecl -arch=!i386 _fpclassf(float) @ cdecl -arch=i386,x86_64,arm,arm64 _fpieee_flt(long ptr ptr) @ cdecl _fpreset() -@ stub _fprintf_l +@ varargs _fprintf_l(ptr str ptr) @ stub _fprintf_p @ stub _fprintf_p_l @ stub _fprintf_s_l diff --git a/dlls/msvcrt/file.c b/dlls/msvcrt/file.c index 43f27629a64..7c017847fcf 100644 --- a/dlls/msvcrt/file.c +++ b/dlls/msvcrt/file.c @@ -681,12 +681,12 @@ BOOL msvcrt_create_io_inherit_block(WORD *size, BYTE **block) *handle_ptr = INVALID_HANDLE_VALUE; } wxflag_ptr++; handle_ptr++; - } + } return TRUE; }
-/* INTERNAL: Set up all file descriptors, - * as well as default streams (stdin, stderr and stdout) +/* INTERNAL: Set up all file descriptors, + * as well as default streams (stdin, stderr and stdout) */ void msvcrt_init_io(void) { @@ -1286,7 +1286,7 @@ int CDECL _dup(int od) { int fd, ret; ioinfo *info = get_ioinfo_alloc(&fd); - + if (_dup2(od, fd) == 0) ret = fd; else @@ -5581,6 +5581,19 @@ int WINAPIV fprintf_s(FILE* file, const char *format, ...) return res; }
+/********************************************************************* + * _fprintf_l (MSVCRT.@) + */ +int CDECL _fprintf_l(FILE* file, const char *format, _locale_t locale, ...) +{ + va_list valist; + int res; + va_start(valist, locale); + res = _vfprintf_l(file, format, locale, valist); + va_end(valist); + return res; +} + /********************************************************************* * fwprintf (MSVCRT.@) */ diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec index 8c6a3b9a910..c1b47db6940 100644 --- a/dlls/msvcrt/msvcrt.spec +++ b/dlls/msvcrt/msvcrt.spec @@ -460,7 +460,7 @@ @ cdecl -arch=!i386 _fpclassf(float) @ cdecl -arch=i386,x86_64,arm,arm64 _fpieee_flt(long ptr ptr) @ cdecl _fpreset() -# stub _fprintf_l(ptr str ptr) +@ varargs _fprintf_l(ptr str ptr) # stub _fprintf_p(ptr str) # stub _fprintf_p_l(ptr str ptr) # stub _fprintf_s_l(ptr str ptr)
From: Bartosz Kosiorek gang65@poczta.onet.pl
--- 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/file.c | 13 +++++++++++++ dlls/msvcrt/msvcrt.spec | 2 +- 8 files changed, 20 insertions(+), 7 deletions(-)
diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec index 3902a731311..1f0eae4ebea 100644 --- a/dlls/msvcr100/msvcr100.spec +++ b/dlls/msvcr100/msvcr100.spec @@ -829,7 +829,7 @@ @ cdecl _fpreset() @ varargs _fprintf_l(ptr str ptr) @ varargs _fprintf_p(ptr str) -@ stub _fprintf_p_l +@ varargs _fprintf_p_l(ptr str ptr) @ stub _fprintf_s_l @ cdecl _fputc_nolock(long ptr) @ cdecl _fputchar(long) diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec index c233e79c1d1..4e8aba90118 100644 --- a/dlls/msvcr110/msvcr110.spec +++ b/dlls/msvcr110/msvcr110.spec @@ -1176,7 +1176,7 @@ @ cdecl _fpreset() @ varargs _fprintf_l(ptr str ptr) @ varargs _fprintf_p(ptr str) -@ stub _fprintf_p_l +@ varargs _fprintf_p_l(ptr str ptr) @ stub _fprintf_s_l @ cdecl _fputc_nolock(long ptr) @ cdecl _fputchar(long) diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec index e7350201a90..e8113babfd1 100644 --- a/dlls/msvcr120/msvcr120.spec +++ b/dlls/msvcr120/msvcr120.spec @@ -1177,7 +1177,7 @@ @ cdecl _fpreset() @ varargs _fprintf_l(ptr str ptr) @ varargs _fprintf_p(ptr str) -@ stub _fprintf_p_l +@ varargs _fprintf_p_l(ptr str ptr) @ stub _fprintf_s_l @ cdecl _fputc_nolock(long ptr) @ cdecl _fputchar(long) diff --git a/dlls/msvcr120_app/msvcr120_app.spec b/dlls/msvcr120_app/msvcr120_app.spec index de41ea06eb0..e2b539c917e 100644 --- a/dlls/msvcr120_app/msvcr120_app.spec +++ b/dlls/msvcr120_app/msvcr120_app.spec @@ -1106,7 +1106,7 @@ @ cdecl _fpreset() msvcr120._fpreset @ varargs _fprintf_l(ptr str ptr) msvcr120._fprintf_l @ varargs _fprintf_p(ptr str) msvcr120._fprintf_p -@ stub _fprintf_p_l +@ varargs _fprintf_p_l(ptr str ptr) msvcr120._fprintf_p_l @ stub _fprintf_s_l @ cdecl _fputc_nolock(long ptr) msvcr120._fputc_nolock @ cdecl _fputchar(long) msvcr120._fputchar diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec index 7285ea78221..042393400a7 100644 --- a/dlls/msvcr80/msvcr80.spec +++ b/dlls/msvcr80/msvcr80.spec @@ -495,7 +495,7 @@ @ cdecl _fpreset() @ varargs _fprintf_l(ptr str ptr) @ varargs _fprintf_p(ptr str) -@ stub _fprintf_p_l +@ varargs _fprintf_p_l(ptr str ptr) @ stub _fprintf_s_l @ cdecl _fputc_nolock(long ptr) @ cdecl _fputchar(long) diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec index 0a2e25e5c98..a5bf9c0224f 100644 --- a/dlls/msvcr90/msvcr90.spec +++ b/dlls/msvcr90/msvcr90.spec @@ -478,7 +478,7 @@ @ cdecl _fpreset() @ varargs _fprintf_l(ptr str ptr) @ varargs _fprintf_p(ptr str) -@ stub _fprintf_p_l +@ varargs _fprintf_p_l(ptr str ptr) @ stub _fprintf_s_l @ cdecl _fputc_nolock(long ptr) @ cdecl _fputchar(long) diff --git a/dlls/msvcrt/file.c b/dlls/msvcrt/file.c index 170dae34c42..3e6ef1fc60e 100644 --- a/dlls/msvcrt/file.c +++ b/dlls/msvcrt/file.c @@ -5608,6 +5608,19 @@ int CDECL _fprintf_p(FILE* file, const char *format, ...) return res; }
+/********************************************************************* + * _fprintf_p_l (MSVCRT.@) + */ +int CDECL _fprintf_p_l(FILE* file, const char *format, _locale_t locale, ...) +{ + va_list valist; + int res; + va_start(valist, locale); + res = _vfprintf_p_l(file, format, locale, valist); + va_end(valist); + return res; +} + /********************************************************************* * fwprintf (MSVCRT.@) */ diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec index 60855f58997..79f6055ba48 100644 --- a/dlls/msvcrt/msvcrt.spec +++ b/dlls/msvcrt/msvcrt.spec @@ -462,7 +462,7 @@ @ cdecl _fpreset() @ varargs _fprintf_l(ptr str ptr) @ varargs _fprintf_p(ptr str) -# stub _fprintf_p_l(ptr str ptr) +@ varargs _fprintf_p_l(ptr str ptr) # stub _fprintf_s_l(ptr str ptr) @ cdecl _fputchar(long) @ cdecl _fputwchar(long)
From: Bartosz Kosiorek gang65@poczta.onet.pl
--- 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/file.c | 14 ++++++++++++++ dlls/msvcrt/msvcrt.spec | 2 +- 8 files changed, 21 insertions(+), 7 deletions(-)
diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec index 1cbf9b31fee..3902a731311 100644 --- a/dlls/msvcr100/msvcr100.spec +++ b/dlls/msvcr100/msvcr100.spec @@ -828,7 +828,7 @@ @ cdecl -arch=i386,x86_64,arm,arm64 _fpieee_flt(long ptr ptr) @ cdecl _fpreset() @ varargs _fprintf_l(ptr str ptr) -@ stub _fprintf_p +@ varargs _fprintf_p(ptr str) @ stub _fprintf_p_l @ stub _fprintf_s_l @ cdecl _fputc_nolock(long ptr) diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec index 92f7bb2f859..c233e79c1d1 100644 --- a/dlls/msvcr110/msvcr110.spec +++ b/dlls/msvcr110/msvcr110.spec @@ -1175,7 +1175,7 @@ @ cdecl -arch=i386,x86_64,arm,arm64 _fpieee_flt(long ptr ptr) @ cdecl _fpreset() @ varargs _fprintf_l(ptr str ptr) -@ stub _fprintf_p +@ varargs _fprintf_p(ptr str) @ stub _fprintf_p_l @ stub _fprintf_s_l @ cdecl _fputc_nolock(long ptr) diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec index 2a0fa15cc01..e7350201a90 100644 --- a/dlls/msvcr120/msvcr120.spec +++ b/dlls/msvcr120/msvcr120.spec @@ -1176,7 +1176,7 @@ @ cdecl -arch=i386,x86_64,arm,arm64 _fpieee_flt(long ptr ptr) @ cdecl _fpreset() @ varargs _fprintf_l(ptr str ptr) -@ stub _fprintf_p +@ varargs _fprintf_p(ptr str) @ stub _fprintf_p_l @ stub _fprintf_s_l @ cdecl _fputc_nolock(long ptr) diff --git a/dlls/msvcr120_app/msvcr120_app.spec b/dlls/msvcr120_app/msvcr120_app.spec index 633991fcc54..de41ea06eb0 100644 --- a/dlls/msvcr120_app/msvcr120_app.spec +++ b/dlls/msvcr120_app/msvcr120_app.spec @@ -1105,7 +1105,7 @@ @ cdecl -arch=i386,x86_64,arm,arm64 _fpieee_flt(long ptr ptr) msvcr120._fpieee_flt @ cdecl _fpreset() msvcr120._fpreset @ varargs _fprintf_l(ptr str ptr) msvcr120._fprintf_l -@ stub _fprintf_p +@ varargs _fprintf_p(ptr str) msvcr120._fprintf_p @ stub _fprintf_p_l @ stub _fprintf_s_l @ cdecl _fputc_nolock(long ptr) msvcr120._fputc_nolock diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec index 695ff5857bb..7285ea78221 100644 --- a/dlls/msvcr80/msvcr80.spec +++ b/dlls/msvcr80/msvcr80.spec @@ -494,7 +494,7 @@ @ cdecl -arch=i386,x86_64,arm,arm64 _fpieee_flt(long ptr ptr) @ cdecl _fpreset() @ varargs _fprintf_l(ptr str ptr) -@ stub _fprintf_p +@ varargs _fprintf_p(ptr str) @ stub _fprintf_p_l @ stub _fprintf_s_l @ cdecl _fputc_nolock(long ptr) diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec index 546efb0a4a7..0a2e25e5c98 100644 --- a/dlls/msvcr90/msvcr90.spec +++ b/dlls/msvcr90/msvcr90.spec @@ -477,7 +477,7 @@ @ cdecl -arch=i386,x86_64,arm,arm64 _fpieee_flt(long ptr ptr) @ cdecl _fpreset() @ varargs _fprintf_l(ptr str ptr) -@ stub _fprintf_p +@ varargs _fprintf_p(ptr str) @ stub _fprintf_p_l @ stub _fprintf_s_l @ cdecl _fputc_nolock(long ptr) diff --git a/dlls/msvcrt/file.c b/dlls/msvcrt/file.c index 7c017847fcf..170dae34c42 100644 --- a/dlls/msvcrt/file.c +++ b/dlls/msvcrt/file.c @@ -5594,6 +5594,20 @@ int CDECL _fprintf_l(FILE* file, const char *format, _locale_t locale, ...) return res; }
+ +/********************************************************************* + * _fprintf_p (MSVCRT.@) + */ +int CDECL _fprintf_p(FILE* file, const char *format, ...) +{ + va_list valist; + int res; + va_start(valist, format); + res = _vfprintf_p_l(file, format, NULL, valist); + va_end(valist); + return res; +} + /********************************************************************* * fwprintf (MSVCRT.@) */ diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec index c1b47db6940..60855f58997 100644 --- a/dlls/msvcrt/msvcrt.spec +++ b/dlls/msvcrt/msvcrt.spec @@ -461,7 +461,7 @@ @ cdecl -arch=i386,x86_64,arm,arm64 _fpieee_flt(long ptr ptr) @ cdecl _fpreset() @ varargs _fprintf_l(ptr str ptr) -# stub _fprintf_p(ptr str) +@ varargs _fprintf_p(ptr str) # stub _fprintf_p_l(ptr str ptr) # stub _fprintf_s_l(ptr str ptr) @ cdecl _fputchar(long)
From: Bartosz Kosiorek gang65@poczta.onet.pl
--- dlls/msvcr100/msvcr100.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/file.c | 13 +++++++++++++ dlls/msvcrt/msvcrt.spec | 2 +- 7 files changed, 19 insertions(+), 6 deletions(-)
diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec index 1f0eae4ebea..3ae04c0af78 100644 --- a/dlls/msvcr100/msvcr100.spec +++ b/dlls/msvcr100/msvcr100.spec @@ -830,7 +830,7 @@ @ varargs _fprintf_l(ptr str ptr) @ varargs _fprintf_p(ptr str) @ varargs _fprintf_p_l(ptr str ptr) -@ stub _fprintf_s_l +@ varargs _fprintf_s_l(ptr str ptr) @ cdecl _fputc_nolock(long ptr) @ cdecl _fputchar(long) @ cdecl _fputwc_nolock(long ptr) diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec index e8113babfd1..c3ce7970f8e 100644 --- a/dlls/msvcr120/msvcr120.spec +++ b/dlls/msvcr120/msvcr120.spec @@ -1178,7 +1178,7 @@ @ varargs _fprintf_l(ptr str ptr) @ varargs _fprintf_p(ptr str) @ varargs _fprintf_p_l(ptr str ptr) -@ stub _fprintf_s_l +@ varargs _fprintf_s_l(ptr str ptr) @ cdecl _fputc_nolock(long ptr) @ cdecl _fputchar(long) @ cdecl _fputwc_nolock(long ptr) diff --git a/dlls/msvcr120_app/msvcr120_app.spec b/dlls/msvcr120_app/msvcr120_app.spec index e2b539c917e..98bc11aaf6e 100644 --- a/dlls/msvcr120_app/msvcr120_app.spec +++ b/dlls/msvcr120_app/msvcr120_app.spec @@ -1107,7 +1107,7 @@ @ varargs _fprintf_l(ptr str ptr) msvcr120._fprintf_l @ varargs _fprintf_p(ptr str) msvcr120._fprintf_p @ varargs _fprintf_p_l(ptr str ptr) msvcr120._fprintf_p_l -@ stub _fprintf_s_l +@ varargs _fprintf_s_l(ptr str ptr) msvcr120._fprintf_s_l @ cdecl _fputc_nolock(long ptr) msvcr120._fputc_nolock @ cdecl _fputchar(long) msvcr120._fputchar @ cdecl _fputwc_nolock(long ptr) msvcr120._fputwc_nolock diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec index 042393400a7..377f29579a9 100644 --- a/dlls/msvcr80/msvcr80.spec +++ b/dlls/msvcr80/msvcr80.spec @@ -496,7 +496,7 @@ @ varargs _fprintf_l(ptr str ptr) @ varargs _fprintf_p(ptr str) @ varargs _fprintf_p_l(ptr str ptr) -@ stub _fprintf_s_l +@ varargs _fprintf_s_l(ptr str ptr) @ cdecl _fputc_nolock(long ptr) @ cdecl _fputchar(long) @ cdecl _fputwc_nolock(long ptr) diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec index a5bf9c0224f..7c1ed166ca6 100644 --- a/dlls/msvcr90/msvcr90.spec +++ b/dlls/msvcr90/msvcr90.spec @@ -479,7 +479,7 @@ @ varargs _fprintf_l(ptr str ptr) @ varargs _fprintf_p(ptr str) @ varargs _fprintf_p_l(ptr str ptr) -@ stub _fprintf_s_l +@ varargs _fprintf_s_l(ptr str ptr) @ cdecl _fputc_nolock(long ptr) @ cdecl _fputchar(long) @ cdecl _fputwc_nolock(long ptr) diff --git a/dlls/msvcrt/file.c b/dlls/msvcrt/file.c index 3e6ef1fc60e..8249fdd7764 100644 --- a/dlls/msvcrt/file.c +++ b/dlls/msvcrt/file.c @@ -5621,6 +5621,19 @@ int CDECL _fprintf_p_l(FILE* file, const char *format, _locale_t locale, ...) return res; }
+/********************************************************************* + * _fprintf_s_l (MSVCRT.@) + */ +int CDECL _fprintf_s_l(FILE* file, const char *format, _locale_t locale, ...) +{ + va_list valist; + int res; + va_start(valist, locale); + res = _vfprintf_s_l(file, format, locale, valist); + va_end(valist); + return res; +} + /********************************************************************* * fwprintf (MSVCRT.@) */ diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec index 79f6055ba48..e576f980815 100644 --- a/dlls/msvcrt/msvcrt.spec +++ b/dlls/msvcrt/msvcrt.spec @@ -463,7 +463,7 @@ @ varargs _fprintf_l(ptr str ptr) @ varargs _fprintf_p(ptr str) @ varargs _fprintf_p_l(ptr str ptr) -# stub _fprintf_s_l(ptr str ptr) +@ varargs _fprintf_s_l(ptr str ptr) @ cdecl _fputchar(long) @ cdecl _fputwchar(long) # stub _free_dbg(ptr long)
From: Bartosz Kosiorek gang65@poczta.onet.pl
--- 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/file.c | 14 ++++++++++++++ dlls/msvcrt/msvcrt.spec | 2 +- 8 files changed, 21 insertions(+), 7 deletions(-)
diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec index 3ae04c0af78..d8e76a98532 100644 --- a/dlls/msvcr100/msvcr100.spec +++ b/dlls/msvcr100/msvcr100.spec @@ -863,7 +863,7 @@ @ cdecl _futime32(long ptr) @ cdecl _futime64(long ptr) @ varargs _fwprintf_l(ptr wstr ptr) -@ stub _fwprintf_p +@ varargs _fwprintf_p(ptr wstr) @ stub _fwprintf_p_l @ stub _fwprintf_s_l @ cdecl _fwrite_nolock(ptr long long ptr) diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec index 4e8aba90118..b8c046d0a31 100644 --- a/dlls/msvcr110/msvcr110.spec +++ b/dlls/msvcr110/msvcr110.spec @@ -1210,7 +1210,7 @@ @ cdecl _futime32(long ptr) @ cdecl _futime64(long ptr) @ varargs _fwprintf_l(ptr wstr ptr) -@ stub _fwprintf_p +@ varargs _fwprintf_p(ptr wstr) @ stub _fwprintf_p_l @ stub _fwprintf_s_l @ cdecl _fwrite_nolock(ptr long long ptr) diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec index c3ce7970f8e..273e4f619c8 100644 --- a/dlls/msvcr120/msvcr120.spec +++ b/dlls/msvcr120/msvcr120.spec @@ -1211,7 +1211,7 @@ @ cdecl _futime32(long ptr) @ cdecl _futime64(long ptr) @ varargs _fwprintf_l(ptr wstr ptr) -@ stub _fwprintf_p +@ varargs _fwprintf_p(ptr wstr) @ stub _fwprintf_p_l @ stub _fwprintf_s_l @ cdecl _fwrite_nolock(ptr long long ptr) diff --git a/dlls/msvcr120_app/msvcr120_app.spec b/dlls/msvcr120_app/msvcr120_app.spec index 98bc11aaf6e..822927e7a8e 100644 --- a/dlls/msvcr120_app/msvcr120_app.spec +++ b/dlls/msvcr120_app/msvcr120_app.spec @@ -1140,7 +1140,7 @@ @ cdecl _futime32(long ptr) msvcr120._futime32 @ cdecl _futime64(long ptr) msvcr120._futime64 @ varargs _fwprintf_l(ptr wstr ptr) msvcr120._fwprintf_l -@ stub _fwprintf_p +@ varargs _fwprintf_p(ptr wstr) msvcr120._fwprintf_p @ stub _fwprintf_p_l @ stub _fwprintf_s_l @ cdecl _fwrite_nolock(ptr long long ptr) msvcr120._fwrite_nolock diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec index 377f29579a9..13b371922f0 100644 --- a/dlls/msvcr80/msvcr80.spec +++ b/dlls/msvcr80/msvcr80.spec @@ -529,7 +529,7 @@ @ cdecl _futime32(long ptr) @ cdecl _futime64(long ptr) @ varargs _fwprintf_l(ptr wstr ptr) -@ stub _fwprintf_p +@ varargs _fwprintf_p(ptr wstr) @ stub _fwprintf_p_l @ stub _fwprintf_s_l @ cdecl _fwrite_nolock(ptr long long ptr) diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec index 7c1ed166ca6..315d16bb477 100644 --- a/dlls/msvcr90/msvcr90.spec +++ b/dlls/msvcr90/msvcr90.spec @@ -512,7 +512,7 @@ @ cdecl _futime32(long ptr) @ cdecl _futime64(long ptr) @ varargs _fwprintf_l(ptr wstr ptr) -@ stub _fwprintf_p +@ varargs _fwprintf_p(ptr wstr) @ stub _fwprintf_p_l @ stub _fwprintf_s_l @ cdecl _fwrite_nolock(ptr long long ptr) diff --git a/dlls/msvcrt/file.c b/dlls/msvcrt/file.c index 8249fdd7764..cc5880cf5e0 100644 --- a/dlls/msvcrt/file.c +++ b/dlls/msvcrt/file.c @@ -5673,6 +5673,20 @@ int WINAPIV _fwprintf_l(FILE* file, const wchar_t *format, _locale_t locale, ... return res; }
+/********************************************************************* + * _fwprintf_p (MSVCRT.@) + */ +int WINAPIV _fwprintf_p(FILE* file, const wchar_t *format, ...) +{ + va_list valist; + int res; + va_start(valist, format); + res = _vfwprintf_p_l(file, format, NULL, valist); + va_end(valist); + return res; +} + + /********************************************************************* * printf (MSVCRT.@) */ diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec index e576f980815..2a2ab211e0b 100644 --- a/dlls/msvcrt/msvcrt.spec +++ b/dlls/msvcrt/msvcrt.spec @@ -495,7 +495,7 @@ @ cdecl _futime32(long ptr) @ cdecl _futime64(long ptr) @ varargs _fwprintf_l(ptr wstr ptr) -# stub _fwprintf_p(ptr wstr) +@ varargs _fwprintf_p(ptr wstr) # stub _fwprintf_p_l(ptr wstr ptr) # stub _fwprintf_s_l(ptr wstr ptr) @ varargs _fwscanf_l(ptr wstr ptr)
From: Bartosz Kosiorek gang65@poczta.onet.pl
--- 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/file.c | 12 ++++++++++++ dlls/msvcrt/msvcrt.spec | 2 +- 8 files changed, 19 insertions(+), 7 deletions(-)
diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec index d8e76a98532..dd2cd8f5c8b 100644 --- a/dlls/msvcr100/msvcr100.spec +++ b/dlls/msvcr100/msvcr100.spec @@ -864,7 +864,7 @@ @ cdecl _futime64(long ptr) @ varargs _fwprintf_l(ptr wstr ptr) @ varargs _fwprintf_p(ptr wstr) -@ stub _fwprintf_p_l +@ varargs _fwprintf_p_l(ptr wstr ptr) @ stub _fwprintf_s_l @ cdecl _fwrite_nolock(ptr long long ptr) @ varargs _fwscanf_l(ptr wstr ptr) diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec index b8c046d0a31..add0a536df9 100644 --- a/dlls/msvcr110/msvcr110.spec +++ b/dlls/msvcr110/msvcr110.spec @@ -1211,7 +1211,7 @@ @ cdecl _futime64(long ptr) @ varargs _fwprintf_l(ptr wstr ptr) @ varargs _fwprintf_p(ptr wstr) -@ stub _fwprintf_p_l +@ varargs _fwprintf_p_l(ptr wstr ptr) @ stub _fwprintf_s_l @ cdecl _fwrite_nolock(ptr long long ptr) @ varargs _fwscanf_l(ptr wstr ptr) diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec index 273e4f619c8..83968827b2c 100644 --- a/dlls/msvcr120/msvcr120.spec +++ b/dlls/msvcr120/msvcr120.spec @@ -1212,7 +1212,7 @@ @ cdecl _futime64(long ptr) @ varargs _fwprintf_l(ptr wstr ptr) @ varargs _fwprintf_p(ptr wstr) -@ stub _fwprintf_p_l +@ varargs _fwprintf_p_l(ptr wstr ptr) @ stub _fwprintf_s_l @ cdecl _fwrite_nolock(ptr long long ptr) @ varargs _fwscanf_l(ptr wstr ptr) diff --git a/dlls/msvcr120_app/msvcr120_app.spec b/dlls/msvcr120_app/msvcr120_app.spec index 822927e7a8e..945437ead22 100644 --- a/dlls/msvcr120_app/msvcr120_app.spec +++ b/dlls/msvcr120_app/msvcr120_app.spec @@ -1141,7 +1141,7 @@ @ cdecl _futime64(long ptr) msvcr120._futime64 @ varargs _fwprintf_l(ptr wstr ptr) msvcr120._fwprintf_l @ varargs _fwprintf_p(ptr wstr) msvcr120._fwprintf_p -@ stub _fwprintf_p_l +@ varargs _fwprintf_p_l(ptr wstr ptr) msvcr120._fwprintf_p_l @ stub _fwprintf_s_l @ cdecl _fwrite_nolock(ptr long long ptr) msvcr120._fwrite_nolock @ varargs _fwscanf_l(ptr wstr ptr) msvcr120._fwscanf_l diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec index 13b371922f0..d430a4e3875 100644 --- a/dlls/msvcr80/msvcr80.spec +++ b/dlls/msvcr80/msvcr80.spec @@ -530,7 +530,7 @@ @ cdecl _futime64(long ptr) @ varargs _fwprintf_l(ptr wstr ptr) @ varargs _fwprintf_p(ptr wstr) -@ stub _fwprintf_p_l +@ varargs _fwprintf_p_l(ptr wstr ptr) @ stub _fwprintf_s_l @ cdecl _fwrite_nolock(ptr long long ptr) @ varargs _fwscanf_l(ptr wstr ptr) diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec index 315d16bb477..ff1ee58b3a0 100644 --- a/dlls/msvcr90/msvcr90.spec +++ b/dlls/msvcr90/msvcr90.spec @@ -513,7 +513,7 @@ @ cdecl _futime64(long ptr) @ varargs _fwprintf_l(ptr wstr ptr) @ varargs _fwprintf_p(ptr wstr) -@ stub _fwprintf_p_l +@ varargs _fwprintf_p_l(ptr wstr ptr) @ stub _fwprintf_s_l @ cdecl _fwrite_nolock(ptr long long ptr) @ varargs _fwscanf_l(ptr wstr ptr) diff --git a/dlls/msvcrt/file.c b/dlls/msvcrt/file.c index cc5880cf5e0..810fbaa42e9 100644 --- a/dlls/msvcrt/file.c +++ b/dlls/msvcrt/file.c @@ -5686,6 +5686,18 @@ int WINAPIV _fwprintf_p(FILE* file, const wchar_t *format, ...) return res; }
+/********************************************************************* + * _fwprintf_p_l (MSVCRT.@) + */ +int WINAPIV _fwprintf_p_l(FILE* file, const wchar_t *format, _locale_t locale, ...) +{ + va_list valist; + int res; + va_start(valist, locale); + res = _vfwprintf_p_l(file, format, locale, valist); + va_end(valist); + return res; +}
/********************************************************************* * printf (MSVCRT.@) diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec index 2a2ab211e0b..07a44cdf2f1 100644 --- a/dlls/msvcrt/msvcrt.spec +++ b/dlls/msvcrt/msvcrt.spec @@ -496,7 +496,7 @@ @ cdecl _futime64(long ptr) @ varargs _fwprintf_l(ptr wstr ptr) @ varargs _fwprintf_p(ptr wstr) -# stub _fwprintf_p_l(ptr wstr ptr) +@ varargs _fwprintf_p_l(ptr wstr ptr) # stub _fwprintf_s_l(ptr wstr ptr) @ varargs _fwscanf_l(ptr wstr ptr) @ varargs _fwscanf_s_l(ptr wstr ptr)
From: Bartosz Kosiorek gang65@poczta.onet.pl
--- 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/file.c | 13 +++++++++++++ dlls/msvcrt/msvcrt.spec | 2 +- 8 files changed, 20 insertions(+), 7 deletions(-)
diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec index dd2cd8f5c8b..6686fc0a249 100644 --- a/dlls/msvcr100/msvcr100.spec +++ b/dlls/msvcr100/msvcr100.spec @@ -865,7 +865,7 @@ @ varargs _fwprintf_l(ptr wstr ptr) @ varargs _fwprintf_p(ptr wstr) @ varargs _fwprintf_p_l(ptr wstr ptr) -@ stub _fwprintf_s_l +@ varargs _fwprintf_s_l(ptr wstr ptr) @ cdecl _fwrite_nolock(ptr long long ptr) @ varargs _fwscanf_l(ptr wstr ptr) @ varargs _fwscanf_s_l(ptr wstr ptr) diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec index add0a536df9..81a41f20645 100644 --- a/dlls/msvcr110/msvcr110.spec +++ b/dlls/msvcr110/msvcr110.spec @@ -1212,7 +1212,7 @@ @ varargs _fwprintf_l(ptr wstr ptr) @ varargs _fwprintf_p(ptr wstr) @ varargs _fwprintf_p_l(ptr wstr ptr) -@ stub _fwprintf_s_l +@ varargs _fwprintf_s_l(ptr wstr ptr) @ cdecl _fwrite_nolock(ptr long long ptr) @ varargs _fwscanf_l(ptr wstr ptr) @ varargs _fwscanf_s_l(ptr wstr ptr) diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec index 83968827b2c..33ee887819e 100644 --- a/dlls/msvcr120/msvcr120.spec +++ b/dlls/msvcr120/msvcr120.spec @@ -1213,7 +1213,7 @@ @ varargs _fwprintf_l(ptr wstr ptr) @ varargs _fwprintf_p(ptr wstr) @ varargs _fwprintf_p_l(ptr wstr ptr) -@ stub _fwprintf_s_l +@ varargs _fwprintf_s_l(ptr wstr ptr) @ cdecl _fwrite_nolock(ptr long long ptr) @ varargs _fwscanf_l(ptr wstr ptr) @ varargs _fwscanf_s_l(ptr wstr ptr) diff --git a/dlls/msvcr120_app/msvcr120_app.spec b/dlls/msvcr120_app/msvcr120_app.spec index 945437ead22..2ae6d631884 100644 --- a/dlls/msvcr120_app/msvcr120_app.spec +++ b/dlls/msvcr120_app/msvcr120_app.spec @@ -1142,7 +1142,7 @@ @ varargs _fwprintf_l(ptr wstr ptr) msvcr120._fwprintf_l @ varargs _fwprintf_p(ptr wstr) msvcr120._fwprintf_p @ varargs _fwprintf_p_l(ptr wstr ptr) msvcr120._fwprintf_p_l -@ stub _fwprintf_s_l +@ varargs _fwprintf_s_l(ptr wstr ptr) msvcr120._fwprintf_s_l @ cdecl _fwrite_nolock(ptr long long ptr) msvcr120._fwrite_nolock @ varargs _fwscanf_l(ptr wstr ptr) msvcr120._fwscanf_l @ varargs _fwscanf_s_l(ptr wstr ptr) msvcr120._fwscanf_s_l diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec index d430a4e3875..f85df8a2335 100644 --- a/dlls/msvcr80/msvcr80.spec +++ b/dlls/msvcr80/msvcr80.spec @@ -531,7 +531,7 @@ @ varargs _fwprintf_l(ptr wstr ptr) @ varargs _fwprintf_p(ptr wstr) @ varargs _fwprintf_p_l(ptr wstr ptr) -@ stub _fwprintf_s_l +@ varargs _fwprintf_s_l(ptr wstr ptr) @ cdecl _fwrite_nolock(ptr long long ptr) @ varargs _fwscanf_l(ptr wstr ptr) @ varargs _fwscanf_s_l(ptr wstr ptr) diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec index ff1ee58b3a0..9510196e21d 100644 --- a/dlls/msvcr90/msvcr90.spec +++ b/dlls/msvcr90/msvcr90.spec @@ -514,7 +514,7 @@ @ varargs _fwprintf_l(ptr wstr ptr) @ varargs _fwprintf_p(ptr wstr) @ varargs _fwprintf_p_l(ptr wstr ptr) -@ stub _fwprintf_s_l +@ varargs _fwprintf_s_l(ptr wstr ptr) @ cdecl _fwrite_nolock(ptr long long ptr) @ varargs _fwscanf_l(ptr wstr ptr) @ varargs _fwscanf_s_l(ptr wstr ptr) diff --git a/dlls/msvcrt/file.c b/dlls/msvcrt/file.c index 810fbaa42e9..a3140589481 100644 --- a/dlls/msvcrt/file.c +++ b/dlls/msvcrt/file.c @@ -5699,6 +5699,19 @@ int WINAPIV _fwprintf_p_l(FILE* file, const wchar_t *format, _locale_t locale, . return res; }
+/********************************************************************* + * _fwprintf_s_l (MSVCRT.@) + */ +int WINAPIV _fwprintf_s_l(FILE* file, const wchar_t *format, _locale_t locale, ...) +{ + va_list valist; + int res; + va_start(valist, locale); + res = _vfwprintf_s_l(file, format, locale, valist); + va_end(valist); + return res; +} + /********************************************************************* * printf (MSVCRT.@) */ diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec index 07a44cdf2f1..7e565aec760 100644 --- a/dlls/msvcrt/msvcrt.spec +++ b/dlls/msvcrt/msvcrt.spec @@ -497,7 +497,7 @@ @ varargs _fwprintf_l(ptr wstr ptr) @ varargs _fwprintf_p(ptr wstr) @ varargs _fwprintf_p_l(ptr wstr ptr) -# stub _fwprintf_s_l(ptr wstr ptr) +@ varargs _fwprintf_s_l(ptr wstr ptr) @ varargs _fwscanf_l(ptr wstr ptr) @ varargs _fwscanf_s_l(ptr wstr ptr) @ cdecl _gcvt(double long str)
From: Bartosz Kosiorek gang65@poczta.onet.pl
--- 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 | 13 +++++++++++++ 8 files changed, 20 insertions(+), 7 deletions(-)
diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec index 6686fc0a249..052ce73ec7d 100644 --- a/dlls/msvcr100/msvcr100.spec +++ b/dlls/msvcr100/msvcr100.spec @@ -1260,7 +1260,7 @@ @ varargs _scanf_l(str ptr) @ varargs _scanf_s_l(str ptr) @ varargs _scprintf(str) -@ stub _scprintf_l +@ varargs _scprintf_l(str ptr) @ stub _scprintf_p @ stub _scprintf_p_l @ varargs _scwprintf(wstr) diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec index 81a41f20645..7e098a049eb 100644 --- a/dlls/msvcr110/msvcr110.spec +++ b/dlls/msvcr110/msvcr110.spec @@ -1617,7 +1617,7 @@ @ varargs _scanf_l(str ptr) @ varargs _scanf_s_l(str ptr) @ varargs _scprintf(str) -@ stub _scprintf_l +@ varargs _scprintf_l(str ptr) @ stub _scprintf_p @ stub _scprintf_p_l @ varargs _scwprintf(wstr) diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec index 33ee887819e..39a3565088a 100644 --- a/dlls/msvcr120/msvcr120.spec +++ b/dlls/msvcr120/msvcr120.spec @@ -1628,7 +1628,7 @@ @ varargs _scanf_l(str ptr) @ varargs _scanf_s_l(str ptr) @ varargs _scprintf(str) -@ stub _scprintf_l +@ varargs _scprintf_l(str ptr) @ stub _scprintf_p @ stub _scprintf_p_l @ varargs _scwprintf(wstr) diff --git a/dlls/msvcr120_app/msvcr120_app.spec b/dlls/msvcr120_app/msvcr120_app.spec index 2ae6d631884..87508d5d069 100644 --- a/dlls/msvcr120_app/msvcr120_app.spec +++ b/dlls/msvcr120_app/msvcr120_app.spec @@ -1354,7 +1354,7 @@ @ varargs _scanf_l(str ptr) msvcr120._scanf_l @ varargs _scanf_s_l(str ptr) msvcr120._scanf_s_l @ varargs _scprintf(str) msvcr120._scprintf -@ stub _scprintf_l +@ varargs _scprintf_l(str ptr) msvcr120._scprintf_l @ stub _scprintf_p @ stub _scprintf_p_l @ varargs _scwprintf(wstr) msvcr120._scwprintf diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec index f85df8a2335..9eb50ea2b8e 100644 --- a/dlls/msvcr80/msvcr80.spec +++ b/dlls/msvcr80/msvcr80.spec @@ -938,7 +938,7 @@ @ varargs _scanf_l(str ptr) @ varargs _scanf_s_l(str ptr) @ varargs _scprintf(str) -@ stub _scprintf_l +@ varargs _scprintf_l(str ptr) @ stub _scprintf_p @ stub _scprintf_p_l @ varargs _scwprintf(wstr) diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec index 9510196e21d..90cd807ca19 100644 --- a/dlls/msvcr90/msvcr90.spec +++ b/dlls/msvcr90/msvcr90.spec @@ -914,7 +914,7 @@ @ varargs _scanf_l(str ptr) @ varargs _scanf_s_l(str ptr) @ varargs _scprintf(str) -@ stub _scprintf_l +@ varargs _scprintf_l(str ptr) @ stub _scprintf_p @ stub _scprintf_p_l @ varargs _scwprintf(wstr) diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec index 7e565aec760..7f169f1403a 100644 --- a/dlls/msvcrt/msvcrt.spec +++ b/dlls/msvcrt/msvcrt.spec @@ -885,7 +885,7 @@ @ varargs _scanf_l(str ptr) @ varargs _scanf_s_l(str ptr) @ varargs _scprintf(str) -# stub _scprintf_l(str ptr) +@ varargs _scprintf_l(str ptr) # stub _scprintf_p_l(str ptr) @ varargs _scwprintf(wstr) # stub _scwprintf_l(wstr ptr) diff --git a/dlls/msvcrt/wcs.c b/dlls/msvcrt/wcs.c index 971c04c0f6c..ccaa339ffa0 100644 --- a/dlls/msvcrt/wcs.c +++ b/dlls/msvcrt/wcs.c @@ -1316,6 +1316,19 @@ int WINAPIV _scprintf(const char *format, ...) return retval; }
+/********************************************************************* + * _scprintf_l (MSVCRT.@) + */ +int WINAPIV _scprintf_l(const char *format, _locale_t locale, ...) +{ + int retval; + va_list valist; + va_start(valist, locale); + retval = _vscprintf_l(format, locale, valist); + va_end(valist); + return retval; +} + /********************************************************************* * _vsnwprintf (MSVCRT.@) */
From: Bartosz Kosiorek gang65@poczta.onet.pl
--- 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/wcs.c | 13 +++++++++++++ 7 files changed, 19 insertions(+), 6 deletions(-)
diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec index 052ce73ec7d..2f22af81920 100644 --- a/dlls/msvcr100/msvcr100.spec +++ b/dlls/msvcr100/msvcr100.spec @@ -1261,7 +1261,7 @@ @ varargs _scanf_s_l(str ptr) @ varargs _scprintf(str) @ varargs _scprintf_l(str ptr) -@ stub _scprintf_p +@ varargs _scprintf_p(str) @ stub _scprintf_p_l @ varargs _scwprintf(wstr) @ stub _scwprintf_l diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec index 7e098a049eb..7a1408a0e24 100644 --- a/dlls/msvcr110/msvcr110.spec +++ b/dlls/msvcr110/msvcr110.spec @@ -1618,7 +1618,7 @@ @ varargs _scanf_s_l(str ptr) @ varargs _scprintf(str) @ varargs _scprintf_l(str ptr) -@ stub _scprintf_p +@ varargs _scprintf_p(str) @ stub _scprintf_p_l @ varargs _scwprintf(wstr) @ stub _scwprintf_l diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec index 39a3565088a..c8416c0545b 100644 --- a/dlls/msvcr120/msvcr120.spec +++ b/dlls/msvcr120/msvcr120.spec @@ -1629,7 +1629,7 @@ @ varargs _scanf_s_l(str ptr) @ varargs _scprintf(str) @ varargs _scprintf_l(str ptr) -@ stub _scprintf_p +@ varargs _scprintf_p(str) @ stub _scprintf_p_l @ varargs _scwprintf(wstr) @ stub _scwprintf_l diff --git a/dlls/msvcr120_app/msvcr120_app.spec b/dlls/msvcr120_app/msvcr120_app.spec index 87508d5d069..41b78b43b0a 100644 --- a/dlls/msvcr120_app/msvcr120_app.spec +++ b/dlls/msvcr120_app/msvcr120_app.spec @@ -1355,7 +1355,7 @@ @ varargs _scanf_s_l(str ptr) msvcr120._scanf_s_l @ varargs _scprintf(str) msvcr120._scprintf @ varargs _scprintf_l(str ptr) msvcr120._scprintf_l -@ stub _scprintf_p +@ varargs _scprintf_p(str) msvcr120._scprintf_p @ stub _scprintf_p_l @ varargs _scwprintf(wstr) msvcr120._scwprintf @ stub _scwprintf_l diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec index 9eb50ea2b8e..890b1bead1b 100644 --- a/dlls/msvcr80/msvcr80.spec +++ b/dlls/msvcr80/msvcr80.spec @@ -939,7 +939,7 @@ @ varargs _scanf_s_l(str ptr) @ varargs _scprintf(str) @ varargs _scprintf_l(str ptr) -@ stub _scprintf_p +@ varargs _scprintf_p(str) @ stub _scprintf_p_l @ varargs _scwprintf(wstr) @ stub _scwprintf_l diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec index 90cd807ca19..d878e7120c4 100644 --- a/dlls/msvcr90/msvcr90.spec +++ b/dlls/msvcr90/msvcr90.spec @@ -915,7 +915,7 @@ @ varargs _scanf_s_l(str ptr) @ varargs _scprintf(str) @ varargs _scprintf_l(str ptr) -@ stub _scprintf_p +@ varargs _scprintf_p(str) @ stub _scprintf_p_l @ varargs _scwprintf(wstr) @ stub _scwprintf_l diff --git a/dlls/msvcrt/wcs.c b/dlls/msvcrt/wcs.c index ccaa339ffa0..fc21f162aa7 100644 --- a/dlls/msvcrt/wcs.c +++ b/dlls/msvcrt/wcs.c @@ -1329,6 +1329,19 @@ int WINAPIV _scprintf_l(const char *format, _locale_t locale, ...) return retval; }
+/********************************************************************* + * _scprintf_p (MSVCRT.@) + */ +int WINAPIV _scprintf_p(const char *format, ...) +{ + int retval; + va_list valist; + va_start(valist, format); + retval = _vscprintf_p_l(format, NULL, valist); + va_end(valist); + return retval; +} + /********************************************************************* * _vsnwprintf (MSVCRT.@) */
From: Bartosz Kosiorek gang65@poczta.onet.pl
--- 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 | 13 +++++++++++++ 8 files changed, 20 insertions(+), 7 deletions(-)
diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec index 2f22af81920..e00d0c181bd 100644 --- a/dlls/msvcr100/msvcr100.spec +++ b/dlls/msvcr100/msvcr100.spec @@ -1262,7 +1262,7 @@ @ varargs _scprintf(str) @ varargs _scprintf_l(str ptr) @ varargs _scprintf_p(str) -@ stub _scprintf_p_l +@ varargs _scprintf_p_l(str ptr) @ varargs _scwprintf(wstr) @ stub _scwprintf_l @ stub _scwprintf_p diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec index 7a1408a0e24..d6e860e18ed 100644 --- a/dlls/msvcr110/msvcr110.spec +++ b/dlls/msvcr110/msvcr110.spec @@ -1619,7 +1619,7 @@ @ varargs _scprintf(str) @ varargs _scprintf_l(str ptr) @ varargs _scprintf_p(str) -@ stub _scprintf_p_l +@ varargs _scprintf_p_l(str ptr) @ varargs _scwprintf(wstr) @ stub _scwprintf_l @ stub _scwprintf_p diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec index c8416c0545b..1ad88c3d705 100644 --- a/dlls/msvcr120/msvcr120.spec +++ b/dlls/msvcr120/msvcr120.spec @@ -1630,7 +1630,7 @@ @ varargs _scprintf(str) @ varargs _scprintf_l(str ptr) @ varargs _scprintf_p(str) -@ stub _scprintf_p_l +@ varargs _scprintf_p_l(str ptr) @ varargs _scwprintf(wstr) @ stub _scwprintf_l @ stub _scwprintf_p diff --git a/dlls/msvcr120_app/msvcr120_app.spec b/dlls/msvcr120_app/msvcr120_app.spec index 41b78b43b0a..10b5afacc0b 100644 --- a/dlls/msvcr120_app/msvcr120_app.spec +++ b/dlls/msvcr120_app/msvcr120_app.spec @@ -1356,7 +1356,7 @@ @ varargs _scprintf(str) msvcr120._scprintf @ varargs _scprintf_l(str ptr) msvcr120._scprintf_l @ varargs _scprintf_p(str) msvcr120._scprintf_p -@ stub _scprintf_p_l +@ varargs _scprintf_p_l(str ptr) msvcr120._scprintf_p_l @ varargs _scwprintf(wstr) msvcr120._scwprintf @ stub _scwprintf_l @ stub _scwprintf_p diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec index 890b1bead1b..fe93549517a 100644 --- a/dlls/msvcr80/msvcr80.spec +++ b/dlls/msvcr80/msvcr80.spec @@ -940,7 +940,7 @@ @ varargs _scprintf(str) @ varargs _scprintf_l(str ptr) @ varargs _scprintf_p(str) -@ stub _scprintf_p_l +@ varargs _scprintf_p_l(str ptr) @ varargs _scwprintf(wstr) @ stub _scwprintf_l @ stub _scwprintf_p diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec index d878e7120c4..cebea457e8b 100644 --- a/dlls/msvcr90/msvcr90.spec +++ b/dlls/msvcr90/msvcr90.spec @@ -916,7 +916,7 @@ @ varargs _scprintf(str) @ varargs _scprintf_l(str ptr) @ varargs _scprintf_p(str) -@ stub _scprintf_p_l +@ varargs _scprintf_p_l(str ptr) @ varargs _scwprintf(wstr) @ stub _scwprintf_l @ stub _scwprintf_p diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec index 7f169f1403a..f015fa4b22c 100644 --- a/dlls/msvcrt/msvcrt.spec +++ b/dlls/msvcrt/msvcrt.spec @@ -886,7 +886,7 @@ @ varargs _scanf_s_l(str ptr) @ varargs _scprintf(str) @ varargs _scprintf_l(str ptr) -# stub _scprintf_p_l(str ptr) +@ varargs _scprintf_p_l(str ptr) @ varargs _scwprintf(wstr) # stub _scwprintf_l(wstr ptr) # stub _scwprintf_p_l(wstr ptr) diff --git a/dlls/msvcrt/wcs.c b/dlls/msvcrt/wcs.c index fc21f162aa7..2c4479f54e0 100644 --- a/dlls/msvcrt/wcs.c +++ b/dlls/msvcrt/wcs.c @@ -1342,6 +1342,19 @@ int WINAPIV _scprintf_p(const char *format, ...) return retval; }
+/********************************************************************* + * _scprintf_p_l (MSVCRT.@) + */ +int WINAPIV _scprintf_p_l(const char *format, _locale_t locale, ...) +{ + int retval; + va_list valist; + va_start(valist, locale); + retval = _vscprintf_p_l(format, locale, valist); + va_end(valist); + return retval; +} + /********************************************************************* * _vsnwprintf (MSVCRT.@) */
From: Bartosz Kosiorek gang65@poczta.onet.pl
--- 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/wcs.c | 16 ++++++++++++++++ 7 files changed, 22 insertions(+), 6 deletions(-)
diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec index e00d0c181bd..3fcdcb7121b 100644 --- a/dlls/msvcr100/msvcr100.spec +++ b/dlls/msvcr100/msvcr100.spec @@ -1378,7 +1378,7 @@ @ varargs _swprintf(ptr wstr) @ varargs _swprintf_c(ptr long str) @ varargs _swprintf_c_l(ptr long str ptr) -@ stub _swprintf_p +@ varargs _swprintf_p(ptr long wstr) @ varargs _swprintf_p_l(ptr long wstr ptr) @ varargs _swprintf_s_l(ptr long wstr ptr) @ varargs _swscanf_l(wstr wstr ptr) diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec index d6e860e18ed..04f496b2fe1 100644 --- a/dlls/msvcr110/msvcr110.spec +++ b/dlls/msvcr110/msvcr110.spec @@ -1735,7 +1735,7 @@ @ varargs _swprintf(ptr wstr) @ varargs _swprintf_c(ptr long str) @ varargs _swprintf_c_l(ptr long str ptr) -@ stub _swprintf_p +@ varargs _swprintf_p(ptr long wstr) @ varargs _swprintf_p_l(ptr long wstr ptr) @ varargs _swprintf_s_l(ptr long wstr ptr) @ varargs _swscanf_l(wstr wstr ptr) diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec index 1ad88c3d705..17cf2f87da4 100644 --- a/dlls/msvcr120/msvcr120.spec +++ b/dlls/msvcr120/msvcr120.spec @@ -1753,7 +1753,7 @@ @ varargs _swprintf(ptr wstr) @ varargs _swprintf_c(ptr long str) @ varargs _swprintf_c_l(ptr long str ptr) -@ stub _swprintf_p +@ varargs _swprintf_p(ptr long wstr) @ varargs _swprintf_p_l(ptr long wstr ptr) @ varargs _swprintf_s_l(ptr long wstr ptr) @ varargs _swscanf_l(wstr wstr ptr) diff --git a/dlls/msvcr120_app/msvcr120_app.spec b/dlls/msvcr120_app/msvcr120_app.spec index 10b5afacc0b..b9e8bc0f7c8 100644 --- a/dlls/msvcr120_app/msvcr120_app.spec +++ b/dlls/msvcr120_app/msvcr120_app.spec @@ -1465,7 +1465,7 @@ @ varargs _swprintf(ptr wstr) msvcr120._swprintf @ varargs _swprintf_c(ptr long str) msvcr120._swprintf_c @ varargs _swprintf_c_l(ptr long str ptr) msvcr120._swprintf_c_l -@ stub _swprintf_p +@ varargs _swprintf_p(ptr long wstr) msvcr120._swprintf_p @ varargs _swprintf_p_l(ptr long wstr ptr) msvcr120._swprintf_p_l @ varargs _swprintf_s_l(ptr long wstr ptr) msvcr120._swprintf_s_l @ varargs _swscanf_l(wstr wstr ptr) msvcr120._swscanf_l diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec index fe93549517a..eda6232f3a3 100644 --- a/dlls/msvcr80/msvcr80.spec +++ b/dlls/msvcr80/msvcr80.spec @@ -1058,7 +1058,7 @@ @ varargs _swprintf(ptr wstr) @ varargs _swprintf_c(ptr long str) @ varargs _swprintf_c_l(ptr long str ptr) -@ stub _swprintf_p +@ varargs _swprintf_p(ptr long wstr) @ varargs _swprintf_p_l(ptr long wstr ptr) @ varargs _swprintf_s_l(ptr long wstr ptr) @ varargs _swscanf_l(wstr wstr ptr) diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec index cebea457e8b..037292a3d58 100644 --- a/dlls/msvcr90/msvcr90.spec +++ b/dlls/msvcr90/msvcr90.spec @@ -1033,7 +1033,7 @@ @ varargs _swprintf(ptr wstr) @ varargs _swprintf_c(ptr long str) @ varargs _swprintf_c_l(ptr long str ptr) -@ stub _swprintf_p +@ varargs _swprintf_p(ptr long wstr) @ varargs _swprintf_p_l(ptr long wstr ptr) @ varargs _swprintf_s_l(ptr long wstr ptr) @ varargs _swscanf_l(wstr wstr ptr) diff --git a/dlls/msvcrt/wcs.c b/dlls/msvcrt/wcs.c index 2c4479f54e0..afc2498dae2 100644 --- a/dlls/msvcrt/wcs.c +++ b/dlls/msvcrt/wcs.c @@ -1886,6 +1886,22 @@ int WINAPIV _sprintf_p(char *buffer, size_t length, const char *format, ...) } #endif
+/********************************************************************* + * _swprintf_p (MSVCRT.@) + */ +int WINAPIV _swprintf_p(wchar_t *buffer, size_t length, + const wchar_t *format, ...) +{ + va_list valist; + int r; + + va_start(valist, format); + r = vswprintf_p_l_opt(buffer, length, format, 0, NULL, valist); + va_end(valist); + + return r; +} + /********************************************************************* * _swprintf_p_l (MSVCRT.@) */
This merge request was approved by Piotr Caban.