Re: Mixed assembly crashes on exit
- From: "Oleg Starodumov" <com-dot-debuginfo-at-oleg>
- Date: Fri, 9 Mar 2007 11:07:46 +0200
I have reproduced the problem on two development systems. While the final
error is different on the two systems, is different, it occurs in the same
general area. I have tracked the code to MINTERNAL.H,
ModuleUninitializer::SingletonDomainUnload(). It is using a C++ for each
statement to iterate through a collection of handlers presumably to unload
the modules of the program. It is possible that this collection has gotten
corrupted.
Since the application has native components, I would recommend to start
by checking for possible native heap corruptions (which could, as a side effect,
cause this problem), an effective way to do it is shown by the link below:
http://www.debuginfo.com/tips/userbpntdll.html
(when running the app under debugger, watch also for unexpected first chance
exceptions in Debug Output window, or configure the debugger to stop
when an access violation exception is "thrown" - see Debug | Exceptions dialog)
If it does not help, and if you can reproduce the problem under debugger,
try to inspect the stack collection used by ModuleUninitializer object.
Will there be anything strange in the data?
Also try to set breakpoint in SingletoneDomainUnload function and step
through it, into the modules - will it be able to step at least into one module
(into its DomainUnload), or will it break immediately?
When the crash occurs, what functions are on the call stack?
Also, how does the disassembly around the place of crash look?
--
Oleg
[VC++ MVP http://www.debuginfo.com/]
.
- Follow-Ups:
- Re: Mixed assembly crashes on exit
- From: Jim Walsh
- Re: Mixed assembly crashes on exit
- Prev by Date: Re: Directory Listing Denied
- Next by Date: Re: Mixed assembly crashes on exit
- Previous by thread: Re: Directory Listing Denied
- Next by thread: Re: Mixed assembly crashes on exit
- Index(es):
Relevant Pages
|