=?UTF-8?Q?Iv=C3=A1n=20Matellanes=20?=: msvcirt: Add implementation of streambuf::in_avail/out_waiting.

Alexandre Julliard julliard at wine.codeweavers.com
Thu Jun 11 09:46:11 CDT 2015


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

Author: Iván Matellanes <matellanesivan at gmail.com>
Date:   Tue Jun  9 19:40:49 2015 +0200

msvcirt: Add implementation of streambuf::in_avail/out_waiting.

---

 dlls/msvcirt/msvcirt.c      | 18 ++++++++++++++++++
 dlls/msvcirt/msvcirt.spec   |  8 ++++----
 dlls/msvcrt20/msvcrt20.spec |  8 ++++----
 dlls/msvcrt40/msvcrt40.spec |  8 ++++----
 4 files changed, 30 insertions(+), 12 deletions(-)

diff --git a/dlls/msvcirt/msvcirt.c b/dlls/msvcirt/msvcirt.c
index 7a31699..ae644b3 100644
--- a/dlls/msvcirt/msvcirt.c
+++ b/dlls/msvcirt/msvcirt.c
@@ -335,6 +335,24 @@ void __thiscall streambuf_pbump(streambuf *this, int count)
     this->pptr += count;
 }
 
+/* ?in_avail at streambuf@@QBEHXZ */
+/* ?in_avail at streambuf@@QEBAHXZ */
+DEFINE_THISCALL_WRAPPER(streambuf_in_avail, 4)
+int __thiscall streambuf_in_avail(const streambuf *this)
+{
+    TRACE("(%p)\n", this);
+    return this->egptr - this->gptr;
+}
+
+/* ?out_waiting at streambuf@@QBEHXZ */
+/* ?out_waiting at streambuf@@QEBAHXZ */
+DEFINE_THISCALL_WRAPPER(streambuf_out_waiting, 4)
+int __thiscall streambuf_out_waiting(const streambuf *this)
+{
+    TRACE("(%p)\n", this);
+    return this->pptr - this->pbase;
+}
+
 /* Unexported */
 DEFINE_THISCALL_WRAPPER(streambuf_overflow, 8)
 int __thiscall streambuf_overflow(streambuf *this, int c)
diff --git a/dlls/msvcirt/msvcirt.spec b/dlls/msvcirt/msvcirt.spec
index 576b905..c9f5c06 100644
--- a/dlls/msvcirt/msvcirt.spec
+++ b/dlls/msvcirt/msvcirt.spec
@@ -531,8 +531,8 @@
 @ stub -arch=win64 ?hex@@YAAEAVios@@AEAV1@@Z
 @ stub -arch=win32 ?ignore at istream@@QAEAAV1 at HH@Z  # class istream & __thiscall istream::ignore(int,int)
 @ stub -arch=win64 ?ignore at istream@@QEAAAEAV1 at HH@Z
-@ stub -arch=win32 ?in_avail at streambuf@@QBEHXZ  # int __thiscall streambuf::in_avail(void)const 
-@ stub -arch=win64 ?in_avail at streambuf@@QEBAHXZ
+@ thiscall -arch=win32 ?in_avail at streambuf@@QBEHXZ(ptr) streambuf_in_avail
+@ cdecl -arch=win64 ?in_avail at streambuf@@QEBAHXZ(ptr) streambuf_in_avail
 @ stub -arch=win32 ?init at ios@@IAEXPAVstreambuf@@@Z  # void __thiscall ios::init(class streambuf *)
 @ stub -arch=win64 ?init at ios@@IEAAXPEAVstreambuf@@@Z
 @ stub -arch=win32 ?ipfx at istream@@QAEHH at Z  # int __thiscall istream::ipfx(int)
@@ -575,8 +575,8 @@
 @ stub -arch=win64 ?opfx at ostream@@QEAAHXZ
 @ stub -arch=win32 ?osfx at ostream@@QAEXXZ  # void __thiscall ostream::osfx(void)
 @ stub -arch=win64 ?osfx at ostream@@QEAAXXZ
-@ stub -arch=win32 ?out_waiting at streambuf@@QBEHXZ  # int __thiscall streambuf::out_waiting(void)const 
-@ stub -arch=win64 ?out_waiting at streambuf@@QEBAHXZ
+@ thiscall -arch=win32 ?out_waiting at streambuf@@QBEHXZ(ptr) streambuf_out_waiting
+@ cdecl -arch=win64 ?out_waiting at streambuf@@QEBAHXZ(ptr) streambuf_out_waiting
 @ stub -arch=win32 ?overflow at filebuf@@UAEHH at Z  # virtual int __thiscall filebuf::overflow(int)
 @ stub -arch=win64 ?overflow at filebuf@@UEAAHH at Z
 @ stub -arch=win32 ?overflow at stdiobuf@@UAEHH at Z  # virtual int __thiscall stdiobuf::overflow(int)
diff --git a/dlls/msvcrt20/msvcrt20.spec b/dlls/msvcrt20/msvcrt20.spec
index 5f43568..9d212fe 100644
--- a/dlls/msvcrt20/msvcrt20.spec
+++ b/dlls/msvcrt20/msvcrt20.spec
@@ -517,8 +517,8 @@
 @ stub -arch=win64 ?hex@@YAAEAVios@@AEAV1@@Z
 @ stub -arch=win32 ?ignore at istream@@QAEAAV1 at HH@Z
 @ stub -arch=win64 ?ignore at istream@@QEAAAEAV1 at HH@Z
-@ stub -arch=win32 ?in_avail at streambuf@@QBEHXZ
-@ stub -arch=win64 ?in_avail at streambuf@@QEBAHXZ
+@ thiscall -arch=win32 ?in_avail at streambuf@@QBEHXZ(ptr) msvcirt.?in_avail at streambuf@@QBEHXZ
+@ cdecl -arch=win64 ?in_avail at streambuf@@QEBAHXZ(ptr) msvcirt.?in_avail at streambuf@@QEBAHXZ
 @ stub -arch=win32 ?init at ios@@IAEXPAVstreambuf@@@Z
 @ stub -arch=win64 ?init at ios@@IEAAXPEAVstreambuf@@@Z
 @ stub -arch=win32 ?ipfx at istream@@QAEHH at Z
@@ -561,8 +561,8 @@
 @ stub -arch=win64 ?opfx at ostream@@QEAAHXZ
 @ stub -arch=win32 ?osfx at ostream@@QAEXXZ
 @ stub -arch=win64 ?osfx at ostream@@QEAAXXZ
-@ stub -arch=win32 ?out_waiting at streambuf@@QBEHXZ
-@ stub -arch=win64 ?out_waiting at streambuf@@QEBAHXZ
+@ thiscall -arch=win32 ?out_waiting at streambuf@@QBEHXZ(ptr) msvcirt.?out_waiting at streambuf@@QBEHXZ
+@ cdecl -arch=win64 ?out_waiting at streambuf@@QEBAHXZ(ptr) msvcirt.?out_waiting at streambuf@@QEBAHXZ
 @ stub -arch=win32 ?overflow at filebuf@@UAEHH at Z
 @ stub -arch=win64 ?overflow at filebuf@@UEAAHH at Z
 @ stub -arch=win32 ?overflow at stdiobuf@@UAEHH at Z
diff --git a/dlls/msvcrt40/msvcrt40.spec b/dlls/msvcrt40/msvcrt40.spec
index 81cdcf9..a1cabf9 100644
--- a/dlls/msvcrt40/msvcrt40.spec
+++ b/dlls/msvcrt40/msvcrt40.spec
@@ -584,8 +584,8 @@
 @ stub -arch=win64 ?hex@@YAAEAVios@@AEAV1@@Z
 @ stub -arch=win32 ?ignore at istream@@QAEAAV1 at HH@Z
 @ stub -arch=win64 ?ignore at istream@@QEAAAEAV1 at HH@Z
-@ stub -arch=win32 ?in_avail at streambuf@@QBEHXZ
-@ stub -arch=win64 ?in_avail at streambuf@@QEBAHXZ
+@ thiscall -arch=win32 ?in_avail at streambuf@@QBEHXZ(ptr) msvcirt.?in_avail at streambuf@@QBEHXZ
+@ cdecl -arch=win64 ?in_avail at streambuf@@QEBAHXZ(ptr) msvcirt.?in_avail at streambuf@@QEBAHXZ
 @ stub -arch=win32 ?init at ios@@IAEXPAVstreambuf@@@Z
 @ stub -arch=win64 ?init at ios@@IEAAXPEAVstreambuf@@@Z
 @ stub -arch=win32 ?ipfx at istream@@QAEHH at Z
@@ -630,8 +630,8 @@
 @ stub -arch=win64 ?opfx at ostream@@QEAAHXZ
 @ stub -arch=win32 ?osfx at ostream@@QAEXXZ
 @ stub -arch=win64 ?osfx at ostream@@QEAAXXZ
-@ stub -arch=win32 ?out_waiting at streambuf@@QBEHXZ
-@ stub -arch=win64 ?out_waiting at streambuf@@QEBAHXZ
+@ thiscall -arch=win32 ?out_waiting at streambuf@@QBEHXZ(ptr) msvcirt.?out_waiting at streambuf@@QBEHXZ
+@ cdecl -arch=win64 ?out_waiting at streambuf@@QEBAHXZ(ptr) msvcirt.?out_waiting at streambuf@@QEBAHXZ
 @ stub -arch=win32 ?overflow at filebuf@@UAEHH at Z
 @ stub -arch=win64 ?overflow at filebuf@@UEAAHH at Z
 @ stub -arch=win32 ?overflow at stdiobuf@@UAEHH at Z




More information about the wine-cvs mailing list