Piotr Caban : msvcr100: Added _sprintf_p implementation.

Alexandre Julliard julliard at winehq.org
Wed Dec 12 15:14:54 CST 2012


Module: wine
Branch: master
Commit: 77306693d4a9721034968772769b88374688ae40
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=77306693d4a9721034968772769b88374688ae40

Author: Piotr Caban <piotr at codeweavers.com>
Date:   Wed Dec 12 11:15:33 2012 +0100

msvcr100: Added _sprintf_p implementation.

---

 dlls/msvcr100/msvcr100.c    |   15 +++++++++++++++
 dlls/msvcr100/msvcr100.spec |    2 +-
 dlls/msvcr80/msvcr80.spec   |    2 +-
 dlls/msvcr90/msvcr90.spec   |    2 +-
 include/msvcrt/stdio.h      |    1 +
 5 files changed, 19 insertions(+), 3 deletions(-)

diff --git a/dlls/msvcr100/msvcr100.c b/dlls/msvcr100/msvcr100.c
index f529b10..1a54c43 100644
--- a/dlls/msvcr100/msvcr100.c
+++ b/dlls/msvcr100/msvcr100.c
@@ -458,6 +458,21 @@ size_t CDECL fread_s(void *buf, size_t buf_size, size_t elem_size, size_t count,
 }
 
 /*********************************************************************
+ * _sprintf_p (MSVCR100.@)
+ */
+int CDECL _sprintf_p(char *buffer, size_t length, const char *format, ...)
+{
+    __ms_va_list valist;
+    int r;
+
+    __ms_va_start(valist, format);
+    r = _vsprintf_p_l(buffer, length, format, NULL, valist);
+    __ms_va_end(valist);
+
+    return r;
+}
+
+/*********************************************************************
  *  DllMain (MSVCR100.@)
  */
 BOOL WINAPI DllMain(HINSTANCE hdll, DWORD reason, LPVOID reserved)
diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec
index 70fca053..510c974 100644
--- a/dlls/msvcr100/msvcr100.spec
+++ b/dlls/msvcr100/msvcr100.spec
@@ -1312,7 +1312,7 @@
 @ cdecl _splitpath(str ptr ptr ptr ptr) msvcrt._splitpath
 @ cdecl _splitpath_s(str ptr long ptr long ptr long ptr long) msvcrt._splitpath_s
 @ stub _sprintf_l
-@ stub _sprintf_p
+@ varargs _sprintf_p(ptr long str)
 @ varargs _sprintf_p_l(ptr long str ptr) msvcrt._sprintf_p_l
 @ stub _sprintf_s_l
 @ varargs _sscanf_l(str str ptr) msvcrt._sscanf_l
diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec
index 2eecb7a..27a8f6d 100644
--- a/dlls/msvcr80/msvcr80.spec
+++ b/dlls/msvcr80/msvcr80.spec
@@ -974,7 +974,7 @@
 @ cdecl _splitpath(str ptr ptr ptr ptr) msvcrt._splitpath
 @ cdecl _splitpath_s(str ptr long ptr long ptr long ptr long) msvcrt._splitpath_s
 @ stub _sprintf_l
-@ stub _sprintf_p
+@ varargs _sprintf_p(ptr long str) msvcr100._sprintf_p
 @ varargs _sprintf_p_l(ptr long str ptr) msvcrt._sprintf_p_l
 @ stub _sprintf_s_l
 @ varargs _sscanf_l(str str ptr) msvcrt._sscanf_l
diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec
index 8644692..ccdb7e0 100644
--- a/dlls/msvcr90/msvcr90.spec
+++ b/dlls/msvcr90/msvcr90.spec
@@ -967,7 +967,7 @@
 @ cdecl _splitpath(str ptr ptr ptr ptr) msvcrt._splitpath
 @ cdecl _splitpath_s(str ptr long ptr long ptr long ptr long) msvcrt._splitpath_s
 @ stub _sprintf_l
-@ stub _sprintf_p
+@ varargs _sprintf_p(ptr long str) msvcr100._sprintf_p
 @ varargs _sprintf_p_l(ptr long str ptr) msvcrt._sprintf_p_l
 @ stub _sprintf_s_l
 @ varargs _sscanf_l(str str ptr) msvcrt._sscanf_l
diff --git a/include/msvcrt/stdio.h b/include/msvcrt/stdio.h
index f277516..f6bf3b5 100644
--- a/include/msvcrt/stdio.h
+++ b/include/msvcrt/stdio.h
@@ -125,6 +125,7 @@ int    __cdecl _scprintf(const char*,...);
 int    __cdecl _vscprintf(const char*,__ms_va_list);
 int    __cdecl _vsnprintf(char*,size_t,const char*,__ms_va_list);
 int    __cdecl _vsnprintf_s(char*,size_t,size_t,const char*,__ms_va_list);
+int    __cdecl _vsprintf_p_l(char*,size_t,const char*,_locale_t,__ms_va_list);
 
 void   __cdecl clearerr(FILE*);
 int    __cdecl fclose(FILE*);




More information about the wine-cvs mailing list