msvcrt crash issue, tracing

Kjell Rune Skaaraas kjella79 at
Tue May 5 18:08:48 CDT 2009


I've been working for some time now trying to resolve bug 15817 because it's a kickass game that apart from one crashing issue works great under wine. The situation in brief is that it works with a msvcrt.dll override, but crashes randomly and sometimes consistantly using wine's stub. Now, when I run it with trace+msvcrt, it always crashes right after attaching a new thread:

trace:msvcrt:MSVCRT_operator_delete (0x8edfda0)
trace:msvcrt:DllMain (0x7e510000, DLL_THREAD_ATTACH, (nil)) pid(8), tid(28), tls(2)
trace:msvcrt:MSVCRT_setlocale (4 (null))
err:seh:setup_exception_record stack overflow 1440 bytes in thread 0009 eip 7ef8c40e esp 02910d90 stack 0x2910000-0x2911000-0x2e10000

However, I've been looking at the functions in the trace and it doesn't seem to be any of these functions causing the crash. Now, having looked at what msvcrt.dll is, it's much, much more than these functions, it's the C Run-Time dll and contains lots of functions, most are probably very standard and so don't contain any TRACEs. The only thing I can think of being the cause is that it must be some sort of untraced function causing this. 

I'm sorta out of my depth here on fixing this thing, how would you go about solving it? I think I'd be 90% of the way there if I could just figure out what functions it's really calling. Is there any way to track every access to the DLL, and I mean every? Like say a wrapper that would output a trace line then it calls the wine/real DLL?

Kjell Rune Skaaraas

Alt i ett. Få Yahoo! Mail med adressekartotek, kalender og

More information about the wine-devel mailing list