http://bugs.winehq.org/show_bug.cgi?id=34486
Bug #: 34486 Summary: __unDName cannot demanle a string and shows error Product: Wine Version: unspecified Platform: x86 OS/Version: Windows Status: UNCONFIRMED Severity: critical Priority: P2 Component: msvcrt AssignedTo: wine-bugs@winehq.org ReportedBy: info@vmpsoft.com Classification: Unclassified
Here is an example: ?shouldStartThread@?$IterateKernel@Viterator@?$QList@PEAUsRenderingChunk@@@@X@QtConcurrent@@$4PPPPPPPM@7EAA_NXZ
http://bugs.winehq.org/show_bug.cgi?id=34486
Ivan Permyakov info@vmpsoft.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|__unDName cannot demanle a |__unDName cannot demangle a |string and shows error |string and shows error
http://bugs.winehq.org/show_bug.cgi?id=34486
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- OS/Version|Windows |other Severity|critical |normal
--- Comment #1 from Nikolay Sivov bunglehead@gmail.com 2013-09-11 05:24:38 CDT --- What system are you using and what's your wine version?
http://bugs.winehq.org/show_bug.cgi?id=34486
--- Comment #2 from Ivan Permyakov info@vmpsoft.com 2013-09-11 05:31:11 CDT --- I use these sources in my test project: http://source.winehq.org/source/dlls/msvcrt/undname.c
I think it's the latest version of Wine.
http://bugs.winehq.org/show_bug.cgi?id=34486
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Version|unspecified |1.7.1
http://bugs.winehq.org/show_bug.cgi?id=34486
--- Comment #3 from Ivan Permyakov info@vmpsoft.com 2013-09-11 06:17:34 CDT --- The original UnDecorateSymbolName from dbhelp.dll returns the following value: [thunk]:QtConcurrent::IterateKernel<class QList<struct sRenderingChunk *>::iterator,void>::shouldStartThread`vtordisp{4294967292,8}' (void)
I think that the problem in the function handle_template:
1200 static BOOL handle_template(struct parsed_symbol* sym) 1201 { 1202 const char* name; 1203 const char* args; 1204 1205 assert(*sym->current == '$'); 1206 sym->current++; 1207 if (!(name = get_literal_string(sym))) return FALSE; 1208 if (!(args = get_args(sym, NULL, FALSE, '<', '>'))) return FALSE; 1209 sym->result = str_printf(sym, "%s%s", name, args); 1210 return TRUE; 1211 }
At the beginning of this code sym->current has "$4PPPPPPPM@7EAA_NXZ" but it seems that "$4" is the sign of the numer "PPPPPPPM" (-4 = 4294967292) instead of the literal string "4PPPPPPPM"
http://bugs.winehq.org/show_bug.cgi?id=34486
--- Comment #4 from Ivan Permyakov info@vmpsoft.com 2013-09-12 12:13:01 CDT --- Created attachment 45926 --> http://bugs.winehq.org/attachment.cgi?id=45926 the fixed version
I attached the modified version of your demangler. It has many fixes including the current bug.
P.S. "get_type_encoding" - it's the reversed code from dbghelp.dll. You can make it more beautiful if you need :))
P.P.S. I'm going to remove "handle_data" from sources and use the common "handle_method"
http://bugs.winehq.org/show_bug.cgi?id=34486
--- Comment #5 from Nikolay Sivov bunglehead@gmail.com 2013-09-12 12:41:09 CDT --- (In reply to comment #4)
P.S. "get_type_encoding" - it's the reversed code from dbghelp.dll. You can make it more beautiful if you need :))
Do you mean a reversed native dbghelp.dll from Windows?
I believe a fix was sent today http://www.winehq.org/pipermail/wine-patches/2013-September/126685.html.
http://bugs.winehq.org/show_bug.cgi?id=34486
--- Comment #6 from Ivan Permyakov info@vmpsoft.com 2013-09-12 12:48:38 CDT ---
Do you mean a reversed native dbghelp.dll from Windows?
Yes.
http://bugs.winehq.org/show_bug.cgi?id=34486
--- Comment #7 from Alexandre Julliard julliard@winehq.org 2013-09-12 12:58:05 CDT --- The content of attachment 45926 has been deleted by Alexandre Julliard julliard@winehq.org who provided the following reason:
Disassembling windows code is not allowed
The token used to delete this attachment was generated at 2013-09-12 12:57:42 CDT.
http://bugs.winehq.org/show_bug.cgi?id=34486
--- Comment #8 from Nikolay Sivov bunglehead@gmail.com 2013-09-12 12:58:51 CDT --- (In reply to comment #6)
Do you mean a reversed native dbghelp.dll from Windows?
Yes.
That's a violation of wine development rules, and of EULA as well. Be aware that you'll be most likely banned from getting any patches in wine (at least for dbghelp.dll).
Admin, could you please delete this attachment?
http://bugs.winehq.org/show_bug.cgi?id=34486
--- Comment #9 from Bruno Jesus 00cpxxx@gmail.com 2013-09-12 15:59:20 CDT --- Piotr's patch was commited: http://source.winehq.org/git/wine.git/commitdiff/0df84ecf11cfeae695a95ba6887...
http://bugs.winehq.org/show_bug.cgi?id=34486
Piotr Caban piotr.caban@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED CC| |piotr.caban@gmail.com Resolution| |FIXED
--- Comment #10 from Piotr Caban piotr.caban@gmail.com 2013-09-12 16:19:08 CDT --- Function specified in bug is now demangled correctly. Marking as fixed.
http://bugs.winehq.org/show_bug.cgi?id=34486
Piotr Caban piotr.caban@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |0df84ecf11cfeae695a95ba6887 | |c69a02d67e186
http://bugs.winehq.org/show_bug.cgi?id=34486
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #11 from Alexandre Julliard julliard@winehq.org 2013-09-13 13:19:51 CDT --- Closing bugs fixed in 1.7.2.
http://bugs.winehq.org/show_bug.cgi?id=34486
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |1.6.x
http://bugs.winehq.org/show_bug.cgi?id=34486
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|1.6.x |---
--- Comment #12 from Alexandre Julliard julliard@winehq.org 2013-11-15 13:40:32 CST --- Removing 1.6.x milestone from bugs included in 1.6.1.