Commit 84c5e3a1 authored by Piotr Caban's avatar Piotr Caban Committed by Alexandre Julliard

msvcp71: Added istrstream destructor implementation.

parent 13fa0a8e
......@@ -285,6 +285,14 @@ typedef struct {
} ostrstream;
typedef struct {
basic_istream_char base;
strstreambuf buf;
/* virtual inheritance
* basic_ios_char basic_ios;
*/
} istrstream;
typedef struct {
basic_iostream_char base;
strstreambuf buf;
/* virtual inheritance
......@@ -486,6 +494,8 @@ extern const vtable_ptr MSVCP_strstreambuf_vtable;
static const int ostrstream_vbtable[] = {0, sizeof(ostrstream)};
extern const vtable_ptr MSVCP_ostrstream_vtable;
static const int istrstream_vbtable[] = {0, sizeof(istrstream)};
static const int strstream_vbtable1[] = {0, sizeof(strstream)};
static const int strstream_vbtable2[] = {0, sizeof(strstream)-FIELD_OFFSET(strstream, base.base2)};
extern const vtable_ptr MSVCP_strstream_vtable;
......@@ -12473,6 +12483,24 @@ ostrstream* __thiscall ostrstream_vector_dtor(basic_ios_char *base, unsigned int
return this;
}
static inline istrstream* istrstream_from_basic_ios(basic_ios_char *ptr)
{
return (istrstream*)((char*)ptr-istrstream_vbtable[1]);
}
/* ??1istrstream@std@@UAE@XZ */
/* ??1istrstream@std@@UEAA@XZ */
DEFINE_THISCALL_WRAPPER(istrstream_dtor, 4)
void __thiscall istrstream_dtor(basic_ios_char *base)
{
istrstream *this = istrstream_from_basic_ios(base);
TRACE("(%p)\n", this);
basic_istream_char_dtor(basic_istream_char_to_basic_ios(&this->base));
strstreambuf_dtor(&this->buf);
}
static inline basic_ios_char* strstream_to_basic_ios(strstream *ptr)
{
return (basic_ios_char*)((char*)ptr+strstream_vbtable1[1]);
......
......@@ -1197,8 +1197,8 @@
@ cdecl -arch=win64 ??1facet@locale@std@@UEAA@XZ(ptr) locale_facet_dtor
@ thiscall -arch=win32 ??1ios_base@std@@UAE@XZ(ptr) ios_base_dtor
@ cdecl -arch=win64 ??1ios_base@std@@UEAA@XZ(ptr) ios_base_dtor
@ stub -arch=win32 ??1istrstream@std@@UAE@XZ
@ stub -arch=win64 ??1istrstream@std@@UEAA@XZ
@ thiscall -arch=win32 ??1istrstream@std@@UAE@XZ(ptr) istrstream_dtor
@ cdecl -arch=win64 ??1istrstream@std@@UEAA@XZ(ptr) istrstream_dtor
@ thiscall -arch=win32 ??1locale@std@@QAE@XZ(ptr) locale_dtor
@ cdecl -arch=win64 ??1locale@std@@QEAA@XZ(ptr) locale_dtor
@ stub -arch=win32 ??1messages_base@std@@UAE@XZ
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment