Piotr Caban : msvcr90: Fix _vswprintf_p implementation.
Alexandre Julliard
julliard at winehq.org
Tue Sep 20 13:08:35 CDT 2011
Module: wine
Branch: master
Commit: af6fd252ef8d630be82b9dba3199d5990c80e2b3
URL: http://source.winehq.org/git/wine.git/?a=commit;h=af6fd252ef8d630be82b9dba3199d5990c80e2b3
Author: Piotr Caban <piotr at codeweavers.com>
Date: Tue Sep 20 10:32:29 2011 +0200
msvcr90: Fix _vswprintf_p implementation.
---
dlls/msvcr90/msvcr90.c | 8 ++++++++
dlls/msvcr90/msvcr90.spec | 2 +-
dlls/msvcrt/wcs.c | 2 +-
include/msvcrt/stdio.h | 1 +
include/msvcrt/wchar.h | 1 +
5 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/dlls/msvcr90/msvcr90.c b/dlls/msvcr90/msvcr90.c
index fd24f11..6b97e2f 100644
--- a/dlls/msvcr90/msvcr90.c
+++ b/dlls/msvcr90/msvcr90.c
@@ -358,3 +358,11 @@ void* CDECL _CRT_RTC_INITW(void *unk1, void *unk2, int unk3, int unk4, int unk5)
TRACE("%p %p %x %x %x\n", unk1, unk2, unk3, unk4, unk5);
return NULL;
}
+
+/*********************************************************************
+ * _vswprintf_p (MSVCR90.@)
+ */
+int CDECL MSVCR90__vswprintf_p(wchar_t *buffer, size_t length, const wchar_t *format, __ms_va_list args)
+{
+ return _vswprintf_p_l(buffer, length, format, NULL, args);
+}
diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec
index ffdc931..c93efdd 100644
--- a/dlls/msvcr90/msvcr90.spec
+++ b/dlls/msvcr90/msvcr90.spec
@@ -1107,7 +1107,7 @@
@ cdecl _vswprintf_c(ptr long wstr ptr) msvcrt._vswprintf_c
@ cdecl _vswprintf_c_l(ptr long wstr ptr ptr) msvcrt._vswprintf_c_l
@ cdecl _vswprintf_l(ptr wstr ptr ptr) msvcrt._vswprintf_l
-@ cdecl _vswprintf_p(ptr long wstr ptr) msvcrt._vswprintf
+@ cdecl _vswprintf_p(ptr long wstr ptr) MSVCR90__vswprintf_p
@ cdecl _vswprintf_p_l(ptr long wstr ptr ptr) msvcrt._vswprintf_p_l
@ cdecl _vswprintf_s_l(ptr long wstr ptr ptr) msvcrt._vswprintf_s_l
@ stub _vwprintf_l
diff --git a/dlls/msvcrt/wcs.c b/dlls/msvcrt/wcs.c
index d771d4f..0327ccb 100644
--- a/dlls/msvcrt/wcs.c
+++ b/dlls/msvcrt/wcs.c
@@ -709,7 +709,7 @@ int CDECL MSVCRT_vswprintf_p_l(MSVCRT_wchar_t *buffer, MSVCRT_size_t length,
*MSVCRT__errno() = MSVCRT_EINVAL;
return ret;
} else if(ret == 0)
- ret = pf_printf_w(puts_clbk_str_w, &puts_ctx, format, locale, TRUE, TRUE,
+ ret = pf_printf_w(puts_clbk_str_w, &puts_ctx, format, locale, FALSE, TRUE,
arg_clbk_valist, NULL, &args);
else
ret = pf_printf_w(puts_clbk_str_w, &puts_ctx, format, locale, TRUE, TRUE,
diff --git a/include/msvcrt/stdio.h b/include/msvcrt/stdio.h
index 4e43635..e2c1669 100644
--- a/include/msvcrt/stdio.h
+++ b/include/msvcrt/stdio.h
@@ -191,6 +191,7 @@ int __cdecl _snwprintf_s(wchar_t*,size_t,size_t,const wchar_t*,...);
int __cdecl _vscwprintf(const wchar_t*,__ms_va_list);
int __cdecl _vsnwprintf(wchar_t*,size_t,const wchar_t*,__ms_va_list);
int __cdecl _vsnwprintf_s(wchar_t*,size_t,size_t,const wchar_t*,__ms_va_list);
+int __cdecl _vswprintf_p_l(wchar_t*,size_t,const wchar_t*,_locale_t,__ms_va_list);
FILE* __cdecl _wfdopen(int,const wchar_t*);
FILE* __cdecl _wfopen(const wchar_t*,const wchar_t*);
errno_t __cdecl _wfopen_s(FILE**,const wchar_t*,const wchar_t*);
diff --git a/include/msvcrt/wchar.h b/include/msvcrt/wchar.h
index eab28b7..4c26624 100644
--- a/include/msvcrt/wchar.h
+++ b/include/msvcrt/wchar.h
@@ -322,6 +322,7 @@ int __cdecl _snwprintf_s(wchar_t*,size_t,size_t,const wchar_t*,...);
int __cdecl _vscwprintf(const wchar_t*,__ms_va_list);
int __cdecl _vsnwprintf(wchar_t*,size_t,const wchar_t*,__ms_va_list);
int __cdecl _vsnwprintf_s(wchar_t*,size_t,size_t,const wchar_t*,__ms_va_list);
+int __cdecl _vswprintf_p_l(wchar_t*,size_t,const wchar_t*,_locale_t,__ms_va_list);
FILE* __cdecl _wfdopen(int,const wchar_t*);
FILE* __cdecl _wfopen(const wchar_t*,const wchar_t*);
errno_t __cdecl _wfopen_s(FILE**,const wchar_t*,const wchar_t*);
More information about the wine-cvs
mailing list