Juan Lang juan_lang@yahoo.com writes:
ChangeLog: fixes RtlImageNtHeader when hModule is NULL.
One line patch (two tokens!), should be easy enough to verify correctness.
Well, it may be correct, but it's useless, there's already an exception handler that deals with that.
Interesting. The behavior of the program that called it (ipconfig.exe) was different, it crashed in a different location. But since the FormatMessage fix got rid of the crash altogether, I'm not particularly concerned.
Thanks, --Juan
--- Alexandre Julliard julliard@winehq.com wrote:
Juan Lang juan_lang@yahoo.com writes:
ChangeLog: fixes RtlImageNtHeader when hModule is NULL.
One line patch (two tokens!), should be easy
enough to
verify correctness.
Well, it may be correct, but it's useless, there's already an exception handler that deals with that.
-- Alexandre Julliard julliard@winehq.com
__________________________________ Do you Yahoo!? Yahoo! SiteBuilder - Free, easy-to-use web site design software http://sitebuilder.yahoo.com
Juan Lang juan_lang@yahoo.com writes:
Interesting. The behavior of the program that called it (ipconfig.exe) was different, it crashed in a different location. But since the FormatMessage fix got rid of the crash altogether, I'm not particularly concerned.
Well I am, the behavior should not be different. Could you try reverting the FormatMessage fix and check why the exception handler doesn't do its job?
--- Alexandre Julliard julliard@winehq.com wrote:
Could you try reverting the FormatMessage fix and check why the exception handler doesn't do its job?
I can. How can I investigate the exception handler?
From memory, here's what I observed:
With the FormatMessage fix, of course, everything is hunky dory. If you have a copy of win9x's route.exe, try "wine -- route.exe print"
Without it and with this fix, ipconfig.exe crashes in msvcrt.printf, presumably from a NULL format string. (I hacked FormatMessage to return "bogus" rather than NULL, and ipconfig.exe printed bogus and exited.)
Without either fix, I get a seg fault. If I run it in winedbg, I can't break, but it tells me there's a page fault. If I run it in gdb, I get a page fault.
How can I investigate further?
I'm running on a weird beta of RH8.1 (never released?), configured --with-nptl.
--Juan
__________________________________ Do you Yahoo!? Yahoo! SiteBuilder - Free, easy-to-use web site design software http://sitebuilder.yahoo.com
Well, you could try a +snoop,+relay,+seh,+tid trace. If snoop causes it to crash then drop that one, relay is normally enough.
On Sat, 2003-09-06 at 08:38, Juan Lang wrote:
--- Alexandre Julliard julliard@winehq.com wrote:
Could you try reverting the FormatMessage fix and check why the exception handler doesn't do its job?
I can. How can I investigate the exception handler? From memory, here's what I observed:
With the FormatMessage fix, of course, everything is hunky dory. If you have a copy of win9x's route.exe, try "wine -- route.exe print"
Without it and with this fix, ipconfig.exe crashes in msvcrt.printf, presumably from a NULL format string. (I hacked FormatMessage to return "bogus" rather than NULL, and ipconfig.exe printed bogus and exited.)
Without either fix, I get a seg fault. If I run it in winedbg, I can't break, but it tells me there's a page fault. If I run it in gdb, I get a page fault.
How can I investigate further?
I'm running on a weird beta of RH8.1 (never released?), configured --with-nptl.
--Juan
Do you Yahoo!? Yahoo! SiteBuilder - Free, easy-to-use web site design software http://sitebuilder.yahoo.com
Okay, my bad. The exception handler was getting called, ergo the dialog box telling me it crashed. Sorry for the noise.
--Juan
--- Alexandre Julliard julliard@winehq.com wrote:
Juan Lang juan_lang@yahoo.com writes:
Interesting. The behavior of the program that
called
it (ipconfig.exe) was different, it crashed in a different location. But since the FormatMessage
fix
got rid of the crash altogether, I'm not
particularly
concerned.
Well I am, the behavior should not be different. Could you try reverting the FormatMessage fix and check why the exception handler doesn't do its job?
-- Alexandre Julliard julliard@winehq.com
__________________________________ Do you Yahoo!? Yahoo! SiteBuilder - Free, easy-to-use web site design software http://sitebuilder.yahoo.com
-----Original Message----- From: wine-devel-admin@winehq.org [mailto:wine-devel-admin@winehq.org]On Behalf Of Juan Lang Sent: 05 September 2003 23:28 To: Alexandre Julliard Cc: wine-devel@winehq.com Subject: Re: Resend: ntdll loader fix
Interesting. The behavior of the program that called it (ipconfig.exe) was different, it crashed in a different location. But since the FormatMessage fix got rid of the crash altogether, I'm not particularly concerned.
I think your problem was hidden when you ran the program with winedbg. I have noticed several native DLLs that cause crashes in the loader, but of course these are caught by the exception handler. However, in winedbg all first chance exceptions cause a break into the debugger. Typing "cont" would have eventually got you to the real crash.
Rob