Piotr Caban : msvcp90: Added setw implementation.

Alexandre Julliard julliard at winehq.org
Fri Jun 15 13:34:39 CDT 2012


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

Author: Piotr Caban <piotr at codeweavers.com>
Date:   Fri Jun 15 11:08:47 2012 +0200

msvcp90: Added setw implementation.

---

 dlls/msvcp90/ios.c        |   16 ++++++++++++++++
 dlls/msvcp90/msvcp90.spec |    4 ++--
 2 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/dlls/msvcp90/ios.c b/dlls/msvcp90/ios.c
index 2c47137..6a628dd 100644
--- a/dlls/msvcp90/ios.c
+++ b/dlls/msvcp90/ios.c
@@ -5562,6 +5562,22 @@ manip_streamsize* __cdecl setprecision(manip_streamsize *ret, streamsize prec)
     return ret;
 }
 
+static void __cdecl setw_func(ios_base *base, streamsize width)
+{
+    ios_base_width_set(base, width);
+}
+
+/* ?setw at std@@YA?AU?$_Smanip at H@1 at H@Z */
+/* ?setw at std@@YA?AU?$_Smanip at _J@1 at _J@Z */
+manip_streamsize* __cdecl setw(manip_streamsize *ret, streamsize width)
+{
+    TRACE("(%p %ld)\n", ret, width);
+
+    ret->pfunc = setw_func;
+    ret->arg = width;
+    return ret;
+}
+
 static basic_filebuf_char filebuf_stdin;
 /* ?cin at std@@3V?$basic_istream at DU?$char_traits at D@std@@@1 at A */
 struct {
diff --git a/dlls/msvcp90/msvcp90.spec b/dlls/msvcp90/msvcp90.spec
index fccc07d..baa349e 100644
--- a/dlls/msvcp90/msvcp90.spec
+++ b/dlls/msvcp90/msvcp90.spec
@@ -5368,8 +5368,8 @@
 @ cdecl -arch=win64 ?setstate at ios_base@std@@QEAAXH_N at Z(ptr long long) ios_base_setstate_reraise
 @ thiscall -arch=win32 ?setstate at ios_base@std@@QAEXI at Z(ptr long) ios_base_setstate_unsigned
 @ cdecl -arch=win64 ?setstate at ios_base@std@@QEAAXI at Z(ptr long) ios_base_setstate_unsigned
-@ stub -arch=win32 ?setw at std@@YA?AU?$_Smanip at H@1 at H@Z
-@ stub -arch=win64 ?setw at std@@YA?AU?$_Smanip at _J@1 at _J@Z
+@ cdecl -arch=win32 ?setw at std@@YA?AU?$_Smanip at H@1 at H@Z(ptr long) setw
+@ cdecl -arch=win64 ?setw at std@@YA?AU?$_Smanip at _J@1 at _J@Z(ptr long) setw
 @ thiscall -arch=win32 ?sgetc@?$basic_streambuf at DU?$char_traits at D@std@@@std@@QAEHXZ(ptr) basic_streambuf_char_sgetc
 @ cdecl -arch=win64 ?sgetc@?$basic_streambuf at DU?$char_traits at D@std@@@std@@QEAAHXZ(ptr) basic_streambuf_char_sgetc
 @ thiscall -arch=win32 ?sgetc@?$basic_streambuf at GU?$char_traits at G@std@@@std@@QAEGXZ(ptr) basic_streambuf_wchar_sgetc




More information about the wine-cvs mailing list