Hello,
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?
Regards,
Kjell Rune Skaaraas
_________________________________________________________
Alt i ett. Få Yahoo! Mail med adressekartotek, kalender og
notisblokk. http://no.mail.yahoo.com