Module: wine Branch: master Commit: 96c9b0fb842c0ecf6f4e6d36c7aced3e36c805f3 URL: http://source.winehq.org/git/wine.git/?a=commit;h=96c9b0fb842c0ecf6f4e6d36c7...
Author: Piotr Caban piotr@codeweavers.com Date: Sat Nov 10 00:00:23 2012 +0100
msvcp90: Fixed a memory leak in virtual destructor tests.
---
dlls/msvcp90/tests/misc.c | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/dlls/msvcp90/tests/misc.c b/dlls/msvcp90/tests/misc.c index 19dcdde..5188fd5 100644 --- a/dlls/msvcp90/tests/misc.c +++ b/dlls/msvcp90/tests/misc.c @@ -96,6 +96,7 @@ static /*basic_ostringstream_char*/void* (__thiscall *p_basic_ostringstream_char /*basic_ostringstream_char*/void*, int, /*MSVCP_bool*/int); static void (__thiscall *p_basic_ostringstream_char_dtor)(/*basic_ostringstream_char*/void*); static void (__thiscall *p_basic_ostringstream_char_vbase_dtor)(/*basic_ostringstream_char*/void*); +static void (__thiscall *p_basic_ios_char_dtor)(/*basic_ios_char*/void*);
static int invalid_parameter = 0; static void __cdecl test_invalid_parameter_handler(const wchar_t *expression, @@ -223,6 +224,8 @@ static BOOL init(void) "??1?$basic_ostringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@UEAA@XZ"); SET(p_basic_ostringstream_char_vbase_dtor, "??_D?$basic_ostringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QEAAXXZ"); + SET(p_basic_ios_char_dtor, + "??1?$basic_ios@DU?$char_traits@D@std@@@std@@UEAA@XZ"); } else { SET(p_char_assign, "?assign@?$char_traits@D@std@@SAXAADABD@Z"); SET(p_wchar_assign, "?assign@?$char_traits@_W@std@@SAXAA_WAB_W@Z"); @@ -258,6 +261,8 @@ static BOOL init(void) "??1?$basic_ostringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@UAE@XZ"); SET(p_basic_ostringstream_char_vbase_dtor, "??_D?$basic_ostringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEXXZ"); + SET(p_basic_ios_char_dtor, + "??1?$basic_ios@DU?$char_traits@D@std@@@std@@UAE@XZ"); }
init_thiscall_thunk(); @@ -503,8 +508,10 @@ static void test_virtual_base_dtors(void) call_func3(p_basic_ostringstream_char_ctor_mode, this, 0, 1); call_func1(p_basic_ostringstream_char_vbase_dtor, this);
+ /* this test uses vbtable set by earlier test */ call_func3(p_basic_ostringstream_char_ctor_mode, this, 0, 0); call_func1(p_basic_ostringstream_char_dtor, this+basic_ostringstream_char_vbtable[1]); + call_func1(p_basic_ios_char_dtor, this+((int**)this)[0][1]); }
START_TEST(misc)