No information is printed on application shutdown

Dec 12, 2011 at 10:56 AM


I am just starting to test vld and I have a strange problem. We have a VoIP like application so first we come to a login screen for user name and password.

1. If I just press exit on this screen without logging in to the application. I get the vld prints at the end of the console.

2. If I login and then exit the application there is no vld prints at the end (I see the init prints though so it starts fine).

All other shutdown prints, closing threads and exiting application with code=0 etc look the same in both scenarios. Also Visual Studio exits debug mode without complaining but in the second case, I get no info from VLD at the end, only when exiting the application before logging in which makes the usecase kinda limited :-)

I understand this is a vague problem but does anyone more familiar with how vld shuts down have any clue on what might cause it not to print any information in the second case. It seems as our app is closing down just fine but maybe it is not if vld is not terminating as expected?

All suggestions are highly welcome.

Dec 12, 2011 at 11:03 AM

I also now tested the report to file option and it behaves the same. Exiting from the login screen gives me a report file which says no leaks are detected. Existing after having logged in seems to shut down the app ok but the leak report file is empty, indicating the vld never shut down as expected.

This might point to something strange in our applications shut down sequence even though everything seems to behave just fine.

Still, any input on the condition for vld to print the report on shutdown would be very helpful.

Oct 25, 2012 at 8:24 AM

hey hubbo, did u ever find the solution to this? i have the same problem. I'm using VS2010 for a really big mfc project and suddenly the leak reports don't show. i have traced the behavior to the VLD not shutting down properly as you have described.

I have also noticed in VS2010 that our own class objects are not detected by VLD, but simple mfc classes get detected (like CString*). i tested this because we found a leaky code that allocated our class objects but didn't release it (we found it the hard way!). so when we fixed that, i wondered why VLD didn't report the leak? that's when i found VLD seems to shutdown without reporting leaks.

The thing is, the leaking code is calling our class object that is in a separate dll. VLD reports "No leaks" on this. so when I included VLD on this separate dll to make a trace, that's when VLD shuts down without the usual "No leaks detected" report. If it helps, I am attaching to a process under debug and all codes are debug versions, so to generate a VLD "No leak detected" I have to stop the process.

did u find a fix for this? do u have any idea what is happening?


Mar 10, 2014 at 5:56 PM
Edited Mar 10, 2014 at 6:13 PM
Hi, I have the same problem of yours.
I am using VLD 2.3 on Windows 8.1 x64 and Visual Studio 2012 Update 4.
I have this test application where I use googletest to unit-test my project. The project itself is a static library dynamically linked to CRT.
It also gives no report for leaks at the end, but it starts fine.
Did any of you find a solution or explanation for that?
Mar 11, 2014 at 8:05 AM
no sorry, i haven't found why, so i stopped.