c++ - Visual Leak Detector detects leak on new blank MFC project -


i installed vld try , debug c++ mdi mfc application in visual studio 2008. vld reported memory leak , no matter did not correct issue, created brand new blank project (mdi mfc) , memory leak still showing up. modification made writing #include <vld.h> in main project.h file. documentation says doesn't matter file, here output after execution (simply selecting file/exit , doing nothing else).

'project.exe': loaded 'c:\users\masterhd\documents\visual studio 2008\projects\project\debug\project.exe', symbols loaded. 'project.exe': loaded 'c:\windows\syswow64\ntdll.dll' 'project.exe': loaded 'c:\windows\syswow64\kernel32.dll' 'project.exe': loaded 'c:\windows\syswow64\kernelbase.dll' 'project.exe': loaded 'c:\windows\winsxs\x86_microsoft.vc90.debugmfc_1fc8b3b9a1e18e3b_9.0.21022.8_none_9b54853441e399d5\mfc90ud.dll', symbols loaded. 'project.exe': loaded 'c:\windows\winsxs\x86_microsoft.vc90.debugcrt_1fc8b3b9a1e18e3b_9.0.21022.8_none_96748342450f6aa2\msvcr90d.dll', symbols loaded. 'project.exe': loaded 'c:\windows\syswow64\user32.dll' 'project.exe': loaded 'c:\windows\syswow64\gdi32.dll' 'project.exe': loaded 'c:\windows\syswow64\lpk.dll' 'project.exe': loaded 'c:\windows\syswow64\usp10.dll' 'project.exe': loaded 'c:\windows\syswow64\msvcrt.dll' 'project.exe': loaded 'c:\windows\syswow64\advapi32.dll' 'project.exe': loaded 'c:\windows\syswow64\sechost.dll' 'project.exe': loaded 'c:\windows\syswow64\rpcrt4.dll' 'project.exe': loaded 'c:\windows\syswow64\sspicli.dll' 'project.exe': loaded 'c:\windows\syswow64\cryptbase.dll' 'project.exe': loaded 'c:\windows\syswow64\shlwapi.dll' 'project.exe': loaded 'c:\windows\syswow64\msimg32.dll' 'project.exe': loaded 'c:\windows\winsxs\x86_microsoft.windows.common-controls_6595b64144ccf1df_6.0.7601.17514_none_41e6975e2bd6f2b2\comctl32.dll' 'project.exe': loaded 'c:\windows\syswow64\oleaut32.dll' 'project.exe': loaded 'c:\windows\syswow64\ole32.dll' 'project.exe': loaded 'd:\program files (x86)\visual leak detector\bin\win32\vld_x86.dll' 'project.exe': loaded 'd:\program files (x86)\visual leak detector\bin\win32\dbghelp.dll' 'project.exe': loaded 'c:\windows\syswow64\imm32.dll' 'project.exe': loaded 'c:\windows\syswow64\msctf.dll' 'project.exe': loaded 'c:\windows\winsxs\x86_microsoft.vc90.mfcloc_1fc8b3b9a1e18e3b_9.0.30729.6161_none_49768ef57548175e\mfc90enu.dll', binary not built debug information. visual leak detector version 2.4rc2 installed. 'project.exe': loaded 'c:\windows\syswow64\uxtheme.dll' 'project.exe': loaded 'c:\windows\syswow64\clbcatq.dll' warning: visual leak detector detected memory leaks! ---------- block 981 @ 0x005bf560: 48 bytes ----------   leak hash: 0x32d8578b, count: 1, total 48 bytes   call stack (tid 9552):     f:\dd\vctools\crt_bld\self_x86\crt\src\dbgheap.c (159): msvcr90d.dll!_malloc_dbg     f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\afxmem.cpp (407): mfc90ud.dll!operator new + 0x16 bytes     f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\afxmem.cpp (61): mfc90ud.dll!operator new + 0x13 bytes     f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\tooltip.cpp (479): mfc90ud.dll!cwnd::filtertooltipmessage + 0x11 bytes     f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\tooltip.cpp (374): mfc90ud.dll!cwnd::_filtertooltipmessage     f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\wincore.cpp (1070): mfc90ud.dll!cwnd::pretranslatemessage     f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\barcore.cpp (372): mfc90ud.dll!ccontrolbar::pretranslatemessage + 0xc bytes     f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\wincore.cpp (2946): mfc90ud.dll!cwnd::walkpretranslatetree + 0x14 bytes     f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\thrdcore.cpp (233): mfc90ud.dll!afxinternalpretranslatemessage + 0x12 bytes     f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\thrdcore.cpp (777): mfc90ud.dll!cwinthread::pretranslatemessage + 0x9 bytes     f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\thrdcore.cpp (252): mfc90ud.dll!afxpretranslatemessage + 0x11 bytes     f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\thrdcore.cpp (178): mfc90ud.dll!afxinternalpumpmessage + 0x18 bytes     f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\thrdcore.cpp (900): mfc90ud.dll!cwinthread::pumpmessage     f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\thrdcore.cpp (629): mfc90ud.dll!cwinthread::run + 0xd bytes     f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\appcore.cpp (865): mfc90ud.dll!cwinapp::run     f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\winmain.cpp (47): mfc90ud.dll!afxwinmain + 0xd bytes     f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\appmodul.cpp (30): project.exe!wwinmain     f:\dd\vctools\crt_bld\self_x86\crt\src\crtexe.c (574): project.exe!__tmaincrtstartup + 0x35 bytes     f:\dd\vctools\crt_bld\self_x86\crt\src\crtexe.c (399): project.exe!wwinmaincrtstartup     0x76d8338a (file , line number not available): kernel32.dll!basethreadinitthunk + 0x12 bytes     0x77719f72 (file , line number not available): ntdll.dll!rtlinitializeexceptionchain + 0x63 bytes     0x77719f45 (file , line number not available): ntdll.dll!rtlinitializeexceptionchain + 0x36 bytes   data:     2c 00 00 00    00 00 00 00    f2 19 ba 00    00 e1 00 00     ,....... ........     00 00 00 00    00 00 00 00    18 00 00 00    17 00 00 00     ........ ........     00 00 00 00    ff ff ff ff    00 00 00 00    00 00 00 00     ........ ........   visual leak detector detected 1 memory leak (1016 bytes). largest number used: 14482 bytes. total allocations: 1681878 bytes. visual leak detector exiting. program '[14684] project.exe: native' has exited code 0 (0x0). 

anyone have insights or suggestions? can't pinpoint causing memory leak here, let alone in actual project.

edit: if close application using "x" in top-right corner, no memory leak occurs, when use file/exit drop-down menu, shows 1016 bytes leak.

i pretty late ran same leak using visual studio 2013 , using crtdbg leak detection. appears pretranslatemessage calls filtertooltipmessage during main windows message processing loop. has leak @ following spot

if (ptooltip == null) {   ptooltip = new ctooltipctrl;   if (!ptooltip->create(powner, tts_alwaystip))   ... } 

the point see cleaned if following create call fails. if not fail, don't see other cleanup object.

code located in "microsoft visual studio 12.0\vc\atlmfc\src\mfc\tooltip.cpp". in version have line 416


Comments

Popular posts from this blog

database - VFP Grid + SQL server 2008 - grid not showing correctly -

jquery - Set jPicker field to empty value -

.htaccess - htaccess convert request to clean url and add slash at the end of the url -