Iván Matellanes : msvcirt: Add implementation of streambuf::in_avail/out_waiting.
Module: wine Branch: master Commit: 44fbaf33422c65b261fb1cf8e67975416a239d42 URL: http://source.winehq.org/git/wine.git/?a=commit;h=44fbaf33422c65b261fb1cf8e6... Author: Iván Matellanes <matellanesivan(a)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(a)streambuf@@QBEHXZ */ +/* ?in_avail(a)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(a)streambuf@@QBEHXZ */ +/* ?out_waiting(a)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(a)istream@@QAEAAV1(a)HH@Z # class istream & __thiscall istream::ignore(int,int) @ stub -arch=win64 ?ignore(a)istream@@QEAAAEAV1(a)HH@Z -@ stub -arch=win32 ?in_avail(a)streambuf@@QBEHXZ # int __thiscall streambuf::in_avail(void)const -@ stub -arch=win64 ?in_avail(a)streambuf@@QEBAHXZ +@ thiscall -arch=win32 ?in_avail(a)streambuf@@QBEHXZ(ptr) streambuf_in_avail +@ cdecl -arch=win64 ?in_avail(a)streambuf@@QEBAHXZ(ptr) streambuf_in_avail @ stub -arch=win32 ?init(a)ios@@IAEXPAVstreambuf@@@Z # void __thiscall ios::init(class streambuf *) @ stub -arch=win64 ?init(a)ios@@IEAAXPEAVstreambuf@@@Z @ stub -arch=win32 ?ipfx(a)istream@@QAEHH(a)Z # int __thiscall istream::ipfx(int) @@ -575,8 +575,8 @@ @ stub -arch=win64 ?opfx(a)ostream@@QEAAHXZ @ stub -arch=win32 ?osfx(a)ostream@@QAEXXZ # void __thiscall ostream::osfx(void) @ stub -arch=win64 ?osfx(a)ostream@@QEAAXXZ -@ stub -arch=win32 ?out_waiting(a)streambuf@@QBEHXZ # int __thiscall streambuf::out_waiting(void)const -@ stub -arch=win64 ?out_waiting(a)streambuf@@QEBAHXZ +@ thiscall -arch=win32 ?out_waiting(a)streambuf@@QBEHXZ(ptr) streambuf_out_waiting +@ cdecl -arch=win64 ?out_waiting(a)streambuf@@QEBAHXZ(ptr) streambuf_out_waiting @ stub -arch=win32 ?overflow(a)filebuf@@UAEHH(a)Z # virtual int __thiscall filebuf::overflow(int) @ stub -arch=win64 ?overflow(a)filebuf@@UEAAHH(a)Z @ stub -arch=win32 ?overflow(a)stdiobuf@@UAEHH(a)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(a)istream@@QAEAAV1(a)HH@Z @ stub -arch=win64 ?ignore(a)istream@@QEAAAEAV1(a)HH@Z -@ stub -arch=win32 ?in_avail(a)streambuf@@QBEHXZ -@ stub -arch=win64 ?in_avail(a)streambuf@@QEBAHXZ +@ thiscall -arch=win32 ?in_avail(a)streambuf@@QBEHXZ(ptr) msvcirt.?in_avail(a)streambuf@@QBEHXZ +@ cdecl -arch=win64 ?in_avail(a)streambuf@@QEBAHXZ(ptr) msvcirt.?in_avail(a)streambuf@@QEBAHXZ @ stub -arch=win32 ?init(a)ios@@IAEXPAVstreambuf@@@Z @ stub -arch=win64 ?init(a)ios@@IEAAXPEAVstreambuf@@@Z @ stub -arch=win32 ?ipfx(a)istream@@QAEHH(a)Z @@ -561,8 +561,8 @@ @ stub -arch=win64 ?opfx(a)ostream@@QEAAHXZ @ stub -arch=win32 ?osfx(a)ostream@@QAEXXZ @ stub -arch=win64 ?osfx(a)ostream@@QEAAXXZ -@ stub -arch=win32 ?out_waiting(a)streambuf@@QBEHXZ -@ stub -arch=win64 ?out_waiting(a)streambuf@@QEBAHXZ +@ thiscall -arch=win32 ?out_waiting(a)streambuf@@QBEHXZ(ptr) msvcirt.?out_waiting(a)streambuf@@QBEHXZ +@ cdecl -arch=win64 ?out_waiting(a)streambuf@@QEBAHXZ(ptr) msvcirt.?out_waiting(a)streambuf@@QEBAHXZ @ stub -arch=win32 ?overflow(a)filebuf@@UAEHH(a)Z @ stub -arch=win64 ?overflow(a)filebuf@@UEAAHH(a)Z @ stub -arch=win32 ?overflow(a)stdiobuf@@UAEHH(a)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(a)istream@@QAEAAV1(a)HH@Z @ stub -arch=win64 ?ignore(a)istream@@QEAAAEAV1(a)HH@Z -@ stub -arch=win32 ?in_avail(a)streambuf@@QBEHXZ -@ stub -arch=win64 ?in_avail(a)streambuf@@QEBAHXZ +@ thiscall -arch=win32 ?in_avail(a)streambuf@@QBEHXZ(ptr) msvcirt.?in_avail(a)streambuf@@QBEHXZ +@ cdecl -arch=win64 ?in_avail(a)streambuf@@QEBAHXZ(ptr) msvcirt.?in_avail(a)streambuf@@QEBAHXZ @ stub -arch=win32 ?init(a)ios@@IAEXPAVstreambuf@@@Z @ stub -arch=win64 ?init(a)ios@@IEAAXPEAVstreambuf@@@Z @ stub -arch=win32 ?ipfx(a)istream@@QAEHH(a)Z @@ -630,8 +630,8 @@ @ stub -arch=win64 ?opfx(a)ostream@@QEAAHXZ @ stub -arch=win32 ?osfx(a)ostream@@QAEXXZ @ stub -arch=win64 ?osfx(a)ostream@@QEAAXXZ -@ stub -arch=win32 ?out_waiting(a)streambuf@@QBEHXZ -@ stub -arch=win64 ?out_waiting(a)streambuf@@QEBAHXZ +@ thiscall -arch=win32 ?out_waiting(a)streambuf@@QBEHXZ(ptr) msvcirt.?out_waiting(a)streambuf@@QBEHXZ +@ cdecl -arch=win64 ?out_waiting(a)streambuf@@QEBAHXZ(ptr) msvcirt.?out_waiting(a)streambuf@@QEBAHXZ @ stub -arch=win32 ?overflow(a)filebuf@@UAEHH(a)Z @ stub -arch=win64 ?overflow(a)filebuf@@UEAAHH(a)Z @ stub -arch=win32 ?overflow(a)stdiobuf@@UAEHH(a)Z
participants (1)
-
Alexandre Julliard