Piotr Caban : msvcrt: Add support for UNDNAME_NO_THISTYPE flag in __unDName .

Alexandre Julliard julliard at winehq.org
Tue Oct 22 13:30:42 CDT 2013


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

Author: Piotr Caban <piotr at codeweavers.com>
Date:   Tue Oct 22 16:46:43 2013 +0200

msvcrt: Add support for UNDNAME_NO_THISTYPE flag in __unDName.

---

 dlls/msvcrt/tests/cpp.c |    1 +
 dlls/msvcrt/undname.c   |    1 +
 2 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/dlls/msvcrt/tests/cpp.c b/dlls/msvcrt/tests/cpp.c
index e545a5f..f25fd4a 100644
--- a/dlls/msvcrt/tests/cpp.c
+++ b/dlls/msvcrt/tests/cpp.c
@@ -1318,6 +1318,7 @@ static void test_demangle(void)
 /* 125 */ {"?_dispatch at _impl_Engine@SalomeApp@@$R4CE at BA@PPPPPPPM at 7AE_NAAVomniCallHandle@@@Z",
            "[thunk]:public: virtual bool __thiscall SalomeApp::_impl_Engine::_dispatch`vtordispex{36,16,4294967292,8}' (class omniCallHandle &)",
            "?_dispatch at _impl_Engine@SalomeApp@@$R4CE at BA@PPPPPPPM at 7AE_NAAVomniCallHandle@@@Z"},
+/* 126 */ {"?_Doraise at bad_cast@std@@MEBAXXZ", "protected: virtual void __cdecl std::bad_cast::_Doraise(void)", NULL, 0x60},
     };
     int i, num_test = (sizeof(test)/sizeof(test[0]));
     char* name;
diff --git a/dlls/msvcrt/undname.c b/dlls/msvcrt/undname.c
index 396a003..d4695c8 100644
--- a/dlls/msvcrt/undname.c
+++ b/dlls/msvcrt/undname.c
@@ -1235,6 +1235,7 @@ static BOOL handle_method(struct parsed_symbol* sym, BOOL cast_op)
     mark = sym->stack.num;
     if (has_args && !(args_str = get_args(sym, &array_pmt, TRUE, '(', ')'))) goto done;
     if (sym->flags & UNDNAME_NAME_ONLY) args_str = modifier = NULL;
+    if (sym->flags & UNDNAME_NO_THISTYPE) modifier = NULL;
     sym->stack.num = mark;
 
     /* Note: '()' after 'Z' means 'throws', but we don't care here




More information about the wine-cvs mailing list