October 20, 2005
_wsetlocale memory-leak with VC7.1 and static CRT
It seems that there is a huge memory-leak inside the _wsetlocale function of VC7.1 (VS2003 static CRT).
Here is a small code to reproduce the problem (stupid code, but it generates a very huge memory leak; several MBs/sec):
#include <tchar.h>
#include <locale.h>
int _tmain()
{
while(1)
{
_tsetlocale(LC_ALL, _T("C"));
}
return 0;
}
Now you need to compile it with cl setlocale_bug.cpp /Od /MTd /D ”_UNICODE” /D “UNICODE”
If you start the resulting EXE, you can see very clear (in task-manager (virtual-bytes) or perfmon (private bytes)) that the memory is steadily growing…
But the good news is: It is fixed in VC2005 Beta 2.
Posted 2 years, 2 months ago on October 20, 2005
The trackback url for this post is http://blog.kalmbachnet.de/bblog/trackback.php/47/
The trackback url for this post is http://blog.kalmbachnet.de/bblog/trackback.php/47/
Comments have now been turned off for this post