Program won't run in debugger
Shachar Shemesh
wine-devel at shemesh.biz
Thu Oct 2 07:20:34 CDT 2003
Hi all,
I am trying to find out why Wine is not working with some closed
application, and fix it. I have narrowed it down from the logs to
something to do with MDI (Multiple Documents Interface). However -
trying to connect with a debugger to the program causes the program to
bomb quite bombastically.
It appears that someone (ddd/gdb won't give me a stack frame, so I can
only assume this is in the PE portion of the native application, rather
than inside Wine) keeps calling STI and CLI (Set Interrupt and Clear
Interrupt). This generates a segmentation fault (makes sense - this is
priveleged command). If I do "cont", things continue (I can't vouch as
to how long they do), but another sementation fault is right around the
corner then.
On the other hand, if I detach the debugger from the process, the
process runs fine. I am at a loss as to what might be the cause.
Is there any way to tell gdb to ignore the segmentation fault, and just
let the builtin handler take care of it?
Will using winedbg instead do me any good?
On an unrelated note - I tried running valgrind-wine on the process. It
complained right at the start that wine calls system vector 7 (waitpid),
which is unsupported by valgrind. This seems odd to me, as this would
suggest noone has ever ran valgrind successfully on wine.
Implementing waitpid in valgrind produces even stranger result - it
seems valgrind exists almost immedietly, while the main process
continues onward. Anyone has similar experience with valgrind? Is there
any need for me to submit my waitpid implementation?
Shachar
--
Shachar Shemesh
Open Source integration consultant
Home page & resume - http://www.shemesh.biz/
More information about the wine-devel
mailing list