On Wed, Apr 17, 2019 at 3:00 AM Zebediah Figura z.figura12@gmail.com wrote:
The official answer is "use winedbg --gdb instead". Usually this works well enough.
I've also run into some obscure edge cases, though, that have led me to try running wine under gdb instead. The big problem I've encountered is that the preloader bypasses ld and so prevents gdb from being able to load symbol information. This can be worked around by disabling the preloader.
How does one run winedbg from the build tree? Running
tests $ ../../../loader/wine64 winedbg msxml3_test.exe.so domdoc WineDbg starting on pid 002c couldn't load main module (2) 0x000000007bccc465: ret Wine-dbg> r couldn't load main module (2) 0x000000007bccc465: ret
does not appear to allow me to debug with winedbg from the terminal. An empty command prompt window shows up (black with a blinking cursor, but no prompt). Then
Wine-dbg> q
runs all the tests, outputting stdout to the command prompt window as well as my terminal.
How does one disable the preloader?
That said, the crash in msxml3:domdoc is diagnosed to some degree; it happens because properties get double-freed. I looked at it once but didn't feel comfortable enough with msxml3 to attack it.
Good to know, however if it's not being worked on I might as well see if I can fix it.