Hello all,
My pet app (Catia) works partially now. The thing most missing is, it can't open a file. As soon as I attempt to do so, the app freezes for a minute, then a "Visual C++ Runtime Exception" is shown. The shown dialog doesn't feature any meaningful information.
So I moved from "wine" at the command line to "winedbg" to get a grip. Unfortunately, this runtime exception doesn't cause the debugger to jump in. All I get is one line:
wine: Unhandled exception 0x80000003 at address 0x7b844351 (thread 0027), starting debugger...
If I force the debugger to pay attention by typing Ctrl-C, I can even get a tiny backtrace:
Backtrace: =>1 0xffffe40e (0x0033f260) 2 0x00000800 (0x0033f3a0) 3 0x7b84ab42 ReadFile+0x264(hFile=0x50, buffer=0x33f448, bytesToRead=0x800, bytesRead=0x33fcc0, overlapped=0x0) [/home/mah/ wine/dlls/kernel32/file.c:451] in kernel32 (0x0033f420) 4 0x0040367b in catstart (+0x367b) (0x0033fc58)
Nevertheless, the app continues to run in the GUI as before, making it impossible to check print variables or do stepping.
As a third chance, I tried "winedbg --gdb". However, this stops very early:
00000038:00000013: exception code=0x80000003 warning: Target reported unsupported offsets: Text=00110e20;Data=000000be;Bss=00000008 [New Thread 19] 0x7b8829fd in DbgBreakPoint () at ../../include/winternl.h:1828 1828 static inline void WINAPI DbgBreakPoint(void) { __asm__ __volatile__("int3"); } trace: 98 => 80
After showing this, no debugger prompt follows and a Ctrl-C is answered with a quit of both, the debugger and the app.
As a last resort I tried to insert printf() statements into the source, finding me unable to repeat the numbers seen in the tiny backtrace above. bytesToRead obviously never has the value 0x800 (= 2048).
So my question is: How would I go and debug such an issue? Is it even possible to set breakpoints, to get meaningful backtraces and print() statements and/or to catch Visual Whatever Runtime Exceptions?
Thanks, Markus
P.S.: This is a current Wine (git) on Ubuntu 64-bit.
- - - - - - - - - - - - - - - - - - - Dipl. Ing. Markus Hitter http://www.jump-ing.de/