Tools/platform: Visual Studio 2005, VC++ 8.0, Windows XP.
Build: Multithreaded DLL release libs. (/MD)
In release build (never in debug build) our program occasionally crash on exit. It seems to happen during handling of WM_COMMAND / ID_APP_EXIT. Any idead why? What condition can cause this? What to check?
The crash dump call stack will always look similar to this:
ntdll.dll!7c943151()
[Frames below may be incorrect and/or missing, no symbols loaded for ntdll.dll]
mfc80.dll!CThreadLocalObje
ct::GetDat
a(CNoTrack
Object * (void)* pfnCreateObject=0x781ff99d
) Line 430 + 0x5 bytes C++
> mfc80.dll!AfxGetModuleThre
adState() Line 468 + 0x16 bytes C++
mfc80.dll!AfxCallWndProc(C
Wnd * pWnd=0x00000000, HWND__ * hWnd=0x0001028a, unsigned int nMsg=273, unsigned int wParam=2147348480, long lParam=1244536) Line 257 + 0x5 bytes C++
mfc80.dll!AfxWndProc(HWND_
_ * hWnd=0x00000000, unsigned int nMsg=396930597, unsigned int wParam=2015361171, long lParam=-267715202) Line 388 + 0x10 bytes C++
mfc80.dll!AFX_MAINTAIN_STA
TE2::~AFX_
MAINTAIN_S
TATE2() Line 66 C++
mfc80.dll!AfxWndProcBase(H
WND__ * hWnd=0x0001028a, unsigned int nMsg=273, unsigned int wParam=57665, long lParam=0) Line 411 + 0x26 bytes C++
user32.dll!7e418734()
mfc80.dll!CWinThread::PreT
ranslateMe
ssage(tagM
SG * pMsg=0x001588b8) Line 773 + 0x9 bytes C++
mfc80.dll!AfxInternalPumpM
essage() Line 183 C++
Bsp.exe!DdsWinApp::PumpMes
sage() Line 1668 C++
mfc80.dll!CWinThread::Run(
) Line 625 + 0x7 bytes C++
Bsp.exe!DdsWinApp::Run() Line 1128 + 0x5 bytes C++
mfc80.dll!AfxWinMain(HINST
ANCE__ * hInstance=0x00400000, HINSTANCE__ * hPrevInstance=0x00000000, char * lpCmdLine=0x00152336, int nCmdShow=3) Line 47 + 0x7 bytes C++
Bsp.exe!__tmainCRTStartup(
) Line 589 + 0x1d bytes C
%
Start Free Trial