http://bugs.winehq.org/show_bug.cgi?id=21190
Summary: SQLDetective: setup_exception_record stack overflow on program start Product: Wine Version: 1.1.35 Platform: x86 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: michael.istinger@gmx.at CC: michael.istinger@gmx.at
I installed SQLDetective on wine 1.1.35. The installation finished okay, the installation process looked completely normal to me. When trying to start SQLDetective.exe I get a setup_exception_record stack overflow before the main window is displayed.
I took a WINEDEBUG="+relay,+seh+tld" log and recorded the "bt all" output after the error was displayed.
Will upload both files as attachment.
If this is an application issue, please let me know as I have access to the application developers.
Would appreciate any information you could give me.
Hope I provided you with the right information. This is my first contact with wine.
All the best Michael A. Istinger
http://bugs.winehq.org/show_bug.cgi?id=21190
--- Comment #1 from Michael Istinger michael.istinger@gmx.at 2009-12-29 16:21:04 --- Created an attachment (id=25442) --> (http://bugs.winehq.org/attachment.cgi?id=25442) zip'ed version of WINEDEBUG log
http://bugs.winehq.org/show_bug.cgi?id=21190
--- Comment #2 from Michael Istinger michael.istinger@gmx.at 2009-12-29 16:21:41 --- Created an attachment (id=25443) --> (http://bugs.winehq.org/attachment.cgi?id=25443) bt all output
http://bugs.winehq.org/show_bug.cgi?id=21190
--- Comment #3 from Nikolay Sivov bunglehead@gmail.com 2009-12-29 16:25:19 --- *** Bug 21189 has been marked as a duplicate of this bug. ***
http://bugs.winehq.org/show_bug.cgi?id=21190
Andrew Nguyen arethusa26@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download Status|UNCONFIRMED |NEW URL| |http://www.conquestsoftware | |solutions.com/downloads/sd4 | |31.exe CC| |arethusa26@gmail.com Ever Confirmed|0 |1
--- Comment #4 from Andrew Nguyen arethusa26@gmail.com 2009-12-29 17:46:22 --- I'm confirming with wine-1.1.35-282-g2a0fca7. winedbg captures a first-chance exception:
Backtrace: =>0 0x0182c866 in stddialogs (+0x23c866) (0x0033fc38) 1 0x0182d0cf in stddialogs (+0x23d0cf) (0x0033fcec) 2 0x018d7708 in stddialogs (+0x2e7708) (0x0033fcf4) 3 0x015f5413 in stddialogs (+0x5413) (0x0033fd18) 4 0x015f5500 in stddialogs (+0x5500) (0x0033fd68) 5 0x7bc49475 call_dll_entry_point+0x15() in ntdll (0x0033fd88) 6 0x7bc4c343 MODULE_InitDLL+0xe3(wm=<register ESI not in topmost frame>, reason=<is not available>, lpReserved=0x1) [/home/andrew/wine-git/dlls/ntdll/loader.c:983] in ntdll (0x0033fec8) ...
http://bugs.winehq.org/show_bug.cgi?id=21190
--- Comment #5 from Michael Istinger michael.istinger@gmx.at 2010-01-01 01:57:23 --- Just noticed that you entered the URL to the download page on the official conquest software solutions webpage.
This page contains the 'offical version' of the program. (4.3.1 build 65)
This is not the version of the program I've used in my tests.
I used an internal test version of the program (4,3,1 build 70).
Should you need the exact version of the program to further analyze the problem, please indicate. I will then upload this version as an attachment.
Happy New Year!
Michael Istinger
http://bugs.winehq.org/show_bug.cgi?id=21190
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |focht@gmx.net Component|-unknown |ntdll Resolution| |DUPLICATE Summary|SQLDetective: |SQLDetective: |setup_exception_record |setup_exception_record |stack overflow on program |stack overflow on program |start |start (VirtualQuery | |information on builtins)
--- Comment #6 from Anastasius Focht focht@gmx.net 2010-08-18 15:21:01 --- Hello,
most likely a dupe of bug 16998
That delphi app tries to hook several API of builtins by writing trampolines to API entries (first 5 bytes). It checks the page protection and adjusts it accordingly to write permission before trying to patch the API entries. Unfortunately Wine isn't honest about the prot masks and the app assumes "no need to adjust", writing opcodes directly out resulting in page faults.
"StdDialogs.dll" -> contains hook code
info[1]=68585024 = API entry of SetScrollInfo(), trampoline address
--- snip --- 0043:Call PE DLL (proc=0x19f9e30,module=0x1710000 L"StdDialogs.dll",reason=PROCESS_ATTACH,res=0x1) ... 0043:Call KERNEL32.CreateMutexA(00000000,00000001,01c57cd0 "HookApi:{7DDF4ADB-4A01-4F4B-83AA-8D91C21E99D2}:66:Lock") ret=0171884b ... 0043:Call KERNEL32.VirtualQuery(68580000,0032fb70,0000001c) ret=019229a7 0043:Ret KERNEL32.VirtualQuery() retval=0000001c ret=019229a7 0043:Call KERNEL32.GetProcAddress(68580000,0194e2dc "SetScrollInfo") ret=019230cb 0043:Ret KERNEL32.GetProcAddress() retval=68585024 ret=019230cb 0043:Call KERNEL32.VirtualQuery(68585024,0032fbf4,0000001c) ret=019228fb 0043:Ret KERNEL32.VirtualQuery() retval=0000001c ret=019228fb 0043:Call KERNEL32.VirtualQuery(68585024,0032fbf4,0000001c) ret=019228fb 0043:Ret KERNEL32.VirtualQuery() retval=0000001c ret=019228fb 0043:trace:seh:raise_exception code=c0000005 flags=0 addr=0x194d7ca ip=0194d7ca tid=0043 0043:trace:seh:raise_exception info[0]=00000001 0043:trace:seh:raise_exception info[1]=68585024 0043:trace:seh:raise_exception eax=68585024 ebx=000000c1 ecx=00000097 edx=e4afd7e9 esi=019f96a0 edi=00000112 0043:trace:seh:raise_exception ebp=0032fc38 esp=0032fc20 cs=0023 ds=002b es=002b fs=0063 gs=006b flags=00210286 0043:trace:seh:call_vectored_handlers calling handler at 0x68fa42a0 code=c0000005 flags=0 0043:trace:seh:call_vectored_handlers handler at 0x68fa42a0 returned 0 0043:trace:seh:call_vectored_handlers calling handler at 0x68d75820 code=c0000005 flags=0 0043:trace:seh:call_vectored_handlers handler at 0x68d75820 returned 0 0043:trace:seh:call_stack_handlers calling handler at 0x194e147 code=c0000005 flags=0 0043:trace:seh:call_stack_handlers handler at 0x194e147 returned 1 0043:trace:seh:call_stack_handlers calling handler at 0x194e158 code=c0000005 flags=0 --- snip ---
Interestingly there is some kind of custom exception handling in that app that ought to handle such situation, displaying some kind of exception/debugging info/dialog. This also fails, recursively eating up the stack.
--- snip --- ... 0043:Call KERNEL32.GetProcAddress(00400000,01790054 "EurekaLog_CallExceptObject") ret=01790027 0043:Ret KERNEL32.GetProcAddress() retval=00485b18 ret=01790027 0043:trace:seh:raise_exception code=c0000005 flags=0 addr=(nil) ip=00000000 tid=0043 0043:trace:seh:raise_exception info[0]=00000000 0043:trace:seh:raise_exception info[1]=00000000 0043:trace:seh:raise_exception eax=0032fbc8 ebx=00000000 ecx=00000000 edx=0032f8fc esi=0032f8fc edi=0032fbc8 0043:trace:seh:raise_exception ebp=0032f74c esp=0032f738 cs=0023 ds=002b es=002b fs=0063 gs=006b flags=00210246 0043:trace:seh:call_vectored_handlers calling handler at 0x68fa42a0 code=c0000005 flags=0 0043:trace:seh:call_vectored_handlers handler at 0x68fa42a0 returned 0 0043:trace:seh:call_vectored_handlers calling handler at 0x68d75820 code=c0000005 flags=0 0043:trace:seh:call_vectored_handlers handler at 0x68d75820 returned 0 0043:trace:seh:call_stack_handlers calling handler at 0x179003f code=c0000005 flags=0 0043:Call user32.LoadStringA(01710000,0000ffd7,0032e0c4,00001000) ret=01718067 0043:Ret user32.LoadStringA() retval=00000004 ret=01718067 ... --- snip ---
"EurekaLog_CallExceptObject" -> http://www.eurekalog.com/index_delphi.php
Regards
*** This bug has been marked as a duplicate of bug 16998 ***
http://bugs.winehq.org/show_bug.cgi?id=21190
Dmitry Timoshkov dmitry@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #7 from Dmitry Timoshkov dmitry@codeweavers.com 2010-08-19 00:08:12 --- Closing duplicate.