Piotr Caban : msvcp90: Use DEFINE_RTTI_DATA to define iosb RTTI base descriptor.
Module: wine Branch: master Commit: 50bbba932e5dea05f17860ea7a95aa792d717e99 URL: http://source.winehq.org/git/wine.git/?a=commit;h=50bbba932e5dea05f17860ea7a... Author: Piotr Caban <piotr(a)codeweavers.com> Date: Tue Mar 27 12:40:47 2012 +0200 msvcp90: Use DEFINE_RTTI_DATA to define iosb RTTI base descriptor. --- dlls/msvcp90/ios.c | 23 ++++++++++------------- 1 files changed, 10 insertions(+), 13 deletions(-) diff --git a/dlls/msvcp90/ios.c b/dlls/msvcp90/ios.c index a8d4ddd..25c0e39 100644 --- a/dlls/msvcp90/ios.c +++ b/dlls/msvcp90/ios.c @@ -149,6 +149,8 @@ typedef struct { basic_ios_char child; } basic_ostream_char; +extern const vtable_ptr MSVCP_iosb_vtable; + /* ??_7ios_base(a)std@@6B@ */ extern const vtable_ptr MSVCP_ios_base_vtable; @@ -164,19 +166,7 @@ extern const vtable_ptr MSVCP_basic_streambuf_char_vtable; /* ??_7?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@6B@ */ extern const vtable_ptr MSVCP_basic_ostream_char_vtable; -static const type_info iosb_type_info = { - &MSVCP_ios_base_vtable, - NULL, - ".?AV?$_Iosb(a)H@std@@" -}; - -static const rtti_base_descriptor iosb_rtti_base_descriptor = { - &iosb_type_info, - 0, - { 4, -1, 0 }, - 64 -}; - +DEFINE_RTTI_DATA(iosb, 0, 0, NULL, NULL, NULL, ".?AV?$_Iosb(a)H@std@@"); DEFINE_RTTI_DATA(ios_base, 0, 1, &iosb_rtti_base_descriptor, NULL, NULL, ".?AV?$_Iosb(a)H@std@@"); DEFINE_RTTI_DATA(basic_ios_char, 0, 2, &ios_base_rtti_base_descriptor, &iosb_rtti_base_descriptor, NULL, ".?AV?$basic_ios(a)DU?$char_traits(a)D@std@@@std@@"); @@ -190,6 +180,7 @@ DEFINE_RTTI_DATA(basic_ostream_char, 4, 3, &basic_ios_char_rtti_base_descriptor, #ifndef __GNUC__ void __asm_dummy_vtables(void) { #endif + __ASM_VTABLE(iosb, ""); __ASM_VTABLE(ios_base, ""); __ASM_VTABLE(basic_ios_char, ""); __ASM_VTABLE(basic_ios_wchar, ""); @@ -260,6 +251,12 @@ ios_base* __thiscall MSVCP_ios_base_vector_dtor(ios_base *this, unsigned int fla return this; } +DEFINE_THISCALL_WRAPPER(MSVCP_iosb_vector_dtor, 8) +ios_base* __thiscall MSVCP_iosb_vector_dtor(ios_base *this, unsigned int flags) +{ + return MSVCP_ios_base_vector_dtor(this, flags); +} + /* ??4ios_base(a)std@@QAEAAV01(a)ABV01@@Z */ /* ??4ios_base(a)std@@QEAAAEAV01(a)AEBV01@@Z */ DEFINE_THISCALL_WRAPPER(ios_base_assign, 8)
participants (1)
-
Alexandre Julliard