Page 1 of 1

Memory Leak in Font Manager

Posted: Fri Nov 10, 2006 06:06
by nachilau
Hello,

I have a memory leak when I create the font, this the what I get from the memory leak information

f:\vs70builds\3077\vc\crtbld\crt\src\newop.cpp (12): operator new
f:\vs70builds\3077\vc\crtbld\crt\src\newaop.cpp (7): operator new[]
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\src\ceguistring.cpp (68): CEGUI::String::grow
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\include\ceguistring.h (1328): CEGUI::String::assign
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\include\ceguistring.h (405): CEGUI::String::String
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\include\ceguiproperty.h (86): CEGUI::Property::Property
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\src\ceguifontproperties.cpp (188): CEGUI::FontProperties::FreeTypeAntialiased::FreeTypeAntialiased
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\src\ceguifontproperties.cpp (276): CEGUI::FreeTypeFont::addFreeTypeFontProperties
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\src\ceguifreetypefont.cpp (95): CEGUI::FreeTypeFont::FreeTypeFont
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\src\ceguifontmanager.cpp (160): CEGUI::FontManager::createFont
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\src\ceguifont_xmlhandler.cpp (85): CEGUI::Font_xmlHandler::elementFontStart
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\src\ceguifont_xmlhandler.cpp (61): CEGUI::Font_xmlHandler::elementStart
0x0213E4F7 (File and line number not available): (Function name unavailable)
0x02146DB7 (File and line number not available): (Function name unavailable)
0x02149810 (File and line number not available): (Function name unavailable)
0x0214B635 (File and line number not available): (Function name unavailable)
0x0214AD6C (File and line number not available): (Function name unavailable)
0x0214A5BA (File and line number not available): (Function name unavailable)
0x02144E29 (File and line number not available): (Function name unavailable)
0x02144CA5 (File and line number not available): (Function name unavailable)
0x0213DE86 (File and line number not available): (Function name unavailable)
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\src\ceguifontmanager.cpp (97): CEGUI::FontManager::createFont

---------------------------------------------------------------------------

f:\vs70builds\3077\vc\crtbld\crt\src\newop.cpp (12): operator new
f:\vs70builds\3077\vc\crtbld\crt\src\newaop.cpp (7): operator new[]
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\src\ceguistring.cpp (68): CEGUI::String::grow
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\include\ceguistring.h (1328): CEGUI::String::assign
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\include\ceguistring.h (405): CEGUI::String::String
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\include\ceguiproperty.h (86): CEGUI::Property::Property
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\src\ceguifontproperties.cpp (162): CEGUI::FontProperties::FreeTypePointSize::FreeTypePointSize
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\src\ceguifontproperties.cpp (275): CEGUI::FreeTypeFont::addFreeTypeFontProperties
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\src\ceguifreetypefont.cpp (95): CEGUI::FreeTypeFont::FreeTypeFont
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\src\ceguifontmanager.cpp (160): CEGUI::FontManager::createFont
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\src\ceguifont_xmlhandler.cpp (85): CEGUI::Font_xmlHandler::elementFontStart
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\src\ceguifont_xmlhandler.cpp (61): CEGUI::Font_xmlHandler::elementStart
0x0213E4F7 (File and line number not available): (Function name unavailable)
0x02146DB7 (File and line number not available): (Function name unavailable)
0x02149810 (File and line number not available): (Function name unavailable)
0x0214B635 (File and line number not available): (Function name unavailable)
0x0214AD6C (File and line number not available): (Function name unavailable)
0x0214A5BA (File and line number not available): (Function name unavailable)
0x02144E29 (File and line number not available): (Function name unavailable)
0x02144CA5 (File and line number not available): (Function name unavailable)
0x0213DE86 (File and line number not available): (Function name unavailable)
k:\programmingtool\cegui-0.5.0-rc2\cegui_mk2\src\ceguifontmanager.cpp (97): CEGUI::FontManager::createFont

-----------------------------------------------------------------------------
.
.
.
......
more leaking around the string class

Can anyone told me what is the proper way to release my font? I create my front by calling this

Code: Select all

FontManager::getSingleton().createFont("Commonwealth-10.font");


Thanks![/code]

Posted: Mon Nov 13, 2006 09:52
by CrazyEddie
To destroy a font explicitly you use:
void FontManager::destroyFont (const String &name)
or
void FontManager::destroyFont (Font* font)

The system will destroy all fonts so long as the CEGUI shutdown sequence completes cleanly. You might like to check that you're shutting the system down correctly.

CE.

Posted: Tue Nov 14, 2006 01:49
by nachilau
I did that already,

Code: Select all

FontManager::getSingleton().destroyFont(m_defaultFont);


but it still didn't work. It seems that the problem is in the string class.
[/code]

Posted: Tue Nov 14, 2006 02:07
by nachilau
Um.. I have tested the sample which come with the SDK. My memory leak tools also report the memory leak. This is my stack dump,

---------- Block 65582 at 0x020B8B00: 13 bytes ----------
Call Stack:
f:\vs70builds\3077\vc\crtbld\crt\src\newop.cpp (12): operator new
f:\vs70builds\3077\vc\crtbld\crt\src\newaop.cpp (7): operator new[]
c:\temp\cegui\cegui_mk2\src\ceguistring.cpp (130): CEGUI::String::build_utf8_buff
c:\temp\cegui\cegui_mk2\include\ceguistring.h (1181): CEGUI::String::c_str
c:\temp\cegui\cegui_mk2\src\ceguiwindowmanager.cpp (288): CEGUI::WindowManager::generateUniqueWindowName
c:\temp\cegui\cegui_mk2\src\ceguiwindowmanager.cpp (86): CEGUI::WindowManager::createWindow
c:\temp\cegui\cegui_mk2\samples\fontdemo\src\sample_fontdemo.cpp (106): FontDemo::initialiseSample
c:\temp\cegui\cegui_mk2\samples\common\src\ceguid3d9baseapplication.cpp (154): CEGuiD3D9BaseApplication::execute
c:\temp\cegui\cegui_mk2\samples\common\src\ceguisample.cpp (231): CEGuiSample::initialise
c:\temp\cegui\cegui_mk2\samples\common\src\ceguisample.cpp (120): CEGuiSample::run
c:\temp\cegui\cegui_mk2\samples\fontdemo\src\sample_fontdemo.cpp (294): main
f:\vs70builds\3077\vc\crtbld\crt\src\crtexe.c (398): mainCRTStartup
0x7C816FD7 (File and line number not available): RegisterWaitForInputIdle
Data:
5F 5F 63 65 77 69 6E 5F 75 69 64 5F 00 __cewin_ uid_....

---------- Block 58805 at 0x00E50340: 408 bytes ----------
Call Stack:
f:\vs70builds\3077\vc\crtbld\crt\src\newop.cpp (12): operator new
f:\vs70builds\3077\vc\crtbld\crt\src\newaop.cpp (7): operator new[]
c:\temp\cegui\cegui_mk2\src\ceguistring.cpp (68): CEGUI::String::grow
c:\temp\cegui\cegui_mk2\include\ceguistring.h (1328): CEGUI::String::assign
c:\temp\cegui\cegui_mk2\include\ceguistring.h (405): CEGUI::String::String
c:\temp\cegui\cegui_mk2\include\ceguiproperty.h (86): CEGUI::Property::Property
c:\temp\cegui\cegui_mk2\src\ceguifontproperties.cpp (188): CEGUI::FontProperties::FreeTypeAntialiased::FreeTypeAntialiased
c:\temp\cegui\cegui_mk2\src\ceguifontproperties.cpp (276): CEGUI::FreeTypeFont::addFreeTypeFontProperties
c:\temp\cegui\cegui_mk2\src\ceguifreetypefont.cpp (95): CEGUI::FreeTypeFont::FreeTypeFont
c:\temp\cegui\cegui_mk2\src\ceguifontmanager.cpp (160): CEGUI::FontManager::createFont
c:\temp\cegui\cegui_mk2\src\ceguifont_xmlhandler.cpp (85): CEGUI::Font_xmlHandler::elementFontStart
c:\temp\cegui\cegui_mk2\src\ceguifont_xmlhandler.cpp (61): CEGUI::Font_xmlHandler::elementStart
0x01B2E4F7 (File and line number not available): (Function name unavailable)
0x01B36DB7 (File and line number not available): (Function name unavailable)
0x01B39810 (File and line number not available): (Function name unavailable)
0x01B3B635 (File and line number not available): (Function name unavailable)
0x01B3AD6C (File and line number not available): (Function name unavailable)
0x01B3A5BA (File and line number not available): (Function name unavailable)
0x01B34E29 (File and line number not available): (Function name unavailable)
0x01B34CA5 (File and line number not available): (Function name unavailable)
0x01B2DE86 (File and line number not available): (Function name unavailable)
c:\temp\cegui\cegui_mk2\src\ceguifontmanager.cpp (97): CEGUI::FontManager::createFont
c:\temp\cegui\cegui_mk2\samples\fontdemo\src\sample_fontdemo.cpp (100): FontDemo::initialiseSample
c:\temp\cegui\cegui_mk2\samples\common\src\ceguid3d9baseapplication.cpp (154): CEGuiD3D9BaseApplication::execute
c:\temp\cegui\cegui_mk2\samples\common\src\ceguisample.cpp (231): CEGuiSample::initialise
c:\temp\cegui\cegui_mk2\samples\common\src\ceguisample.cpp (120): CEGuiSample::run
c:\temp\cegui\cegui_mk2\samples\fontdemo\src\sample_fontdemo.cpp (294): main
f:\vs70builds\3077\vc\crtbld\crt\src\crtexe.c (398): mainCRTStartup
0x7C816FD7 (File and line number not available): RegisterWaitForInputIdle
Data:
54 00 00 00 68 00 00 00 69 00 00 00 73 00 00 00 T...h... i...s...
20 00 00 00 69 00 00 00 73 00 00 00 20 00 00 00 ....i... s.......
61 00 00 00 20 00 00 00 66 00 00 00 6C 00 00 00 a....... f...l...
61 00 00 00 67 00 00 00 20 00 00 00 69 00 00 00 a...g... ....i...
6E 00 00 00 64 00 00 00 69 00 00 00 63 00 00 00 n...d... i...c...
61 00 00 00 74 00 00 00 69 00 00 00 6E 00 00 00 a...t... i...n...
67 00 00 00 20 00 00 00 77 00 00 00 68 00 00 00 g....... w...h...
65 00 00 00 6E 00 00 00 65 00 00 00 76 00 00 00 e...n... e...v...
65 00 00 00 72 00 00 00 20 00 00 00 74 00 00 00 e...r... ....t...
6F 00 00 00 20 00 00 00 72 00 00 00 65 00 00 00 o....... r...e...
6E 00 00 00 64 00 00 00 65 00 00 00 72 00 00 00 n...d... e...r...
20 00 00 00 61 00 00 00 6E 00 00 00 74 00 00 00 ....a... n...t...
69 00 00 00 61 00 00 00 6C 00 00 00 69 00 00 00 i...a... l...i...
61 00 00 00 73 00 00 00 65 00 00 00 64 00 00 00 a...s... e...d...
20 00 00 00 66 00 00 00 6F 00 00 00 6E 00 00 00 ....f... o...n...
74 00 00 00 20 00 00 00 6F 00 00 00 72 00 00 00 t....... o...r...
20 00 00 00 6E 00 00 00 6F 00 00 00 74 00 00 00 ....n... o...t...
2E 00 00 00 20 00 00 00 20 00 00 00 56 00 00 00 ........ ....V...
61 00 00 00 6C 00 00 00 75 00 00 00 65 00 00 00 a...l... u...e...
20 00 00 00 69 00 00 00 73 00 00 00 20 00 00 00 ....i... s.......
65 00 00 00 69 00 00 00 74 00 00 00 68 00 00 00 e...i... t...h...
65 00 00 00 72 00 00 00 20 00 00 00 74 00 00 00 e...r... ....t...
72 00 00 00 75 00 00 00 65 00 00 00 20 00 00 00 r...u... e.......
6F 00 00 00 72 00 00 00 20 00 00 00 66 00 00 00 o...r... ....f...
61 00 00 00 6C 00 00 00 73 00 00 00 65 00 00 00 a...l... s...e...
2E 00 00 00 00 00 00 00 ........ ........

---------- Block 58803 at 0x00E50098: 144 bytes ----------
Call Stack:
f:\vs70builds\3077\vc\crtbld\crt\src\newop.cpp (12): operator new
f:\vs70builds\3077\vc\crtbld\crt\src\newaop.cpp (7): operator new[]
c:\temp\cegui\cegui_mk2\src\ceguistring.cpp (68): CEGUI::String::grow
c:\temp\cegui\cegui_mk2\include\ceguistring.h (1328): CEGUI::String::assign
c:\temp\cegui\cegui_mk2\include\ceguistring.h (405): CEGUI::String::String
c:\temp\cegui\cegui_mk2\include\ceguiproperty.h (86): CEGUI::Property::Property
c:\temp\cegui\cegui_mk2\src\ceguifontproperties.cpp (162): CEGUI::FontProperties::FreeTypePointSize::FreeTypePointSize
c:\temp\cegui\cegui_mk2\src\ceguifontproperties.cpp (275): CEGUI::FreeTypeFont::addFreeTypeFontProperties
c:\temp\cegui\cegui_mk2\src\ceguifreetypefont.cpp (95): CEGUI::FreeTypeFont::FreeTypeFont
c:\temp\cegui\cegui_mk2\src\ceguifontmanager.cpp (160): CEGUI::FontManager::createFont
c:\temp\cegui\cegui_mk2\src\ceguifont_xmlhandler.cpp (85): CEGUI::Font_xmlHandler::elementFontStart
c:\temp\cegui\cegui_mk2\src\ceguifont_xmlhandler.cpp (61): CEGUI::Font_xmlHandler::elementStart
0x01B2E4F7 (File and line number not available): (Function name unavailable)
0x01B36DB7 (File and line number not available): (Function name unavailable)
0x01B39810 (File and line number not available): (Function name unavailable)
0x01B3B635 (File and line number not available): (Function name unavailable)
0x01B3AD6C (File and line number not available): (Function name unavailable)
0x01B3A5BA (File and line number not available): (Function name unavailable)
0x01B34E29 (File and line number not available): (Function name unavailable)
0x01B34CA5 (File and line number not available): (Function name unavailable)
0x01B2DE86 (File and line number not available): (Function name unavailable)
c:\temp\cegui\cegui_mk2\src\ceguifontmanager.cpp (97): CEGUI::FontManager::createFont
c:\temp\cegui\cegui_mk2\samples\fontdemo\src\sample_fontdemo.cpp (100): FontDemo::initialiseSample
c:\temp\cegui\cegui_mk2\samples\common\src\ceguid3d9baseapplication.cpp (154): CEGuiD3D9BaseApplication::execute
c:\temp\cegui\cegui_mk2\samples\common\src\ceguisample.cpp (231): CEGuiSample::initialise
c:\temp\cegui\cegui_mk2\samples\common\src\ceguisample.cpp (120): CEGuiSample::run
c:\temp\cegui\cegui_mk2\samples\fontdemo\src\sample_fontdemo.cpp (294): main
f:\vs70builds\3077\vc\crtbld\crt\src\crtexe.c (398): mainCRTStartup
0x7C816FD7 (File and line number not available): RegisterWaitForInputIdle
Data:
54 00 00 00 68 00 00 00 69 00 00 00 73 00 00 00 T...h... i...s...
20 00 00 00 69 00 00 00 73 00 00 00 20 00 00 00 ....i... s.......
74 00 00 00 68 00 00 00 65 00 00 00 20 00 00 00 t...h... e.......
70 00 00 00 6F 00 00 00 69 00 00 00 6E 00 00 00 p...o... i...n...
74 00 00 00 20 00 00 00 73 00 00 00 69 00 00 00 t....... s...i...
7A 00 00 00 65 00 00 00 20 00 00 00 6F 00 00 00 z...e... ....o...
66 00 00 00 20 00 00 00 74 00 00 00 68 00 00 00 f....... t...h...
65 00 00 00 20 00 00 00 66 00 00 00 6F 00 00 00 e....... f...o...
6E 00 00 00 74 00 00 00 2E 00 00 00 00 00 00 00 n...t... ........

---------- Block 58755 at 0x00E4A128: 436 bytes ----------
Call Stack:
f:\vs70builds\3077\vc\crtbld\crt\src\newop.cpp (12): operator new
f:\vs70builds\3077\vc\crtbld\crt\src\newaop.cpp (7): operator new[]
c:\temp\cegui\cegui_mk2\src\ceguistring.cpp (68): CEGUI::String::grow
c:\temp\cegui\cegui_mk2\include\ceguistring.h (1328): CEGUI::String::assign
c:\temp\cegui\cegui_mk2\include\ceguistring.h (405): CEGUI::String::String
c:\temp\cegui\cegui_mk2\include\ceguiproperty.h (86): CEGUI::Property::Property
c:\temp\cegui\cegui_mk2\src\ceguifontproperties.cpp (136): CEGUI::FontProperties::AutoScaled::AutoScaled
c:\temp\cegui\cegui_mk2\src\ceguifontproperties.cpp (264): CEGUI::Font::addFontProperties
c:\temp\cegui\cegui_mk2\src\ceguifont.cpp (91): CEGUI::Font::Font
c:\temp\cegui\cegui_mk2\src\ceguifreetypefont.cpp (91): CEGUI::FreeTypeFont::FreeTypeFont
c:\temp\cegui\cegui_mk2\src\ceguifontmanager.cpp (160): CEGUI::FontManager::createFont
c:\temp\cegui\cegui_mk2\src\ceguifont_xmlhandler.cpp (85): CEGUI::Font_xmlHandler::elementFontStart
c:\temp\cegui\cegui_mk2\src\ceguifont_xmlhandler.cpp (61): CEGUI::Font_xmlHandler::elementStart
0x01B2E4F7 (File and line number not available): (Function name unavailable)
0x01B36DB7 (File and line number not available): (Function name unavailable)
0x01B39810 (File and line number not available): (Function name unavailable)
0x01B3B635 (File and line number not available): (Function name unavailable)
0x01B3AD6C (File and line number not available): (Function name unavailable)
0x01B3A5BA (File and line number not available): (Function name unavailable)
0x01B34E29 (File and line number not available): (Function name unavailable)
0x01B34CA5 (File and line number not available): (Function name unavailable)
0x01B2DE86 (File and line number not available): (Function name unavailable)
c:\temp\cegui\cegui_mk2\src\ceguifontmanager.cpp (97): CEGUI::FontManager::createFont
c:\temp\cegui\cegui_mk2\samples\fontdemo\src\sample_fontdemo.cpp (100): FontDemo::initialiseSample
c:\temp\cegui\cegui_mk2\samples\common\src\ceguid3d9baseapplication.cpp (154): CEGuiD3D9BaseApplication::execute
c:\temp\cegui\cegui_mk2\samples\common\src\ceguisample.cpp (231): CEGuiSample::initialise
c:\temp\cegui\cegui_mk2\samples\common\src\ceguisample.cpp (120): CEGuiSample::run
c:\temp\cegui\cegui_mk2\samples\fontdemo\src\sample_fontdemo.cpp (294): main
f:\vs70builds\3077\vc\crtbld\crt\src\crtexe.c (398): mainCRTStartup
0x7C816FD7 (File and line number not available): RegisterWaitForInputIdle
Data:
54 00 00 00 68 00 00 00 69 00 00 00 73 00 00 00 T...h... i...s...
20 00 00 00 69 00 00 00 73 00 00 00 20 00 00 00 ....i... s.......
61 00 00 00 20 00 00 00 66 00 00 00 6C 00 00 00 a....... f...l...
61 00 00 00 67 00 00 00 20 00 00 00 69 00 00 00 a...g... ....i...
6E 00 00 00 64 00 00 00 69 00 00 00 63 00 00 00 n...d... i...c...
61 00 00 00 74 00 00 00 69 00 00 00 6E 00 00 00 a...t... i...n...
67 00 00 00 20 00 00 00 77 00 00 00 68 00 00 00 g....... w...h...
65 00 00 00 74 00 00 00 68 00 00 00 65 00 00 00 e...t... h...e...
72 00 00 00 20 00 00 00 74 00 00 00 6F 00 00 00 r....... t...o...
20 00 00 00 61 00 00 00 75 00 00 00 74 00 00 00 ....a... u...t...
6F 00 00 00 73 00 00 00 63 00 00 00 61 00 00 00 o...s... c...a...
6C 00 00 00 65 00 00 00 20 00 00 00 66 00 00 00 l...e... ....f...
6F 00 00 00 6E 00 00 00 74 00 00 00 20 00 00 00 o...n... t.......
64 00 00 00 65 00 00 00 70 00 00 00 65 00 00 00 d...e... p...e...
6E 00 00 00 64 00 00 00 69 00 00 00 6E 00 00 00 n...d... i...n...
67 00 00 00 20 00 00 00 6F 00 00 00 6E 00 00 00 g....... o...n...
20 00 00 00 72 00 00 00 65 00 00 00 73 00 00 00 ....r... e...s...
6F 00 00 00 6C 00 00 00 75 00 00 00 74 00 00 00 o...l... u...t...
69 00 00 00 6F 00 00 00 6E 00 00 00 2E 00 00 00 i...o... n.......
20 00 00 00 20 00 00 00 56 00 00 00 61 00 00 00 ........ V...a...
6C 00 00 00 75 00 00 00 65 00 00 00 20 00 00 00 l...u... e.......
69 00 00 00 73 00 00 00 20 00 00 00 65 00 00 00 i...s... ....e...
69 00 00 00 74 00 00 00 68 00 00 00 65 00 00 00 i...t... h...e...
72 00 00 00 20 00 00 00 74 00 00 00 72 00 00 00 r....... t...r...
75 00 00 00 65 00 00 00 20 00 00 00 6F 00 00 00 u...e... ....o...
72 00 00 00 20 00 00 00 66 00 00 00 61 00 00 00 r....... f...a...
6C 00 00 00 73 00 00 00 65 00 00 00 2E 00 00 00 l...s... e.......
00 00 00 00 ........ ........

---------- Block 58753 at 0x00E49E40: 188 bytes ----------
Call Stack:
f:\vs70builds\3077\vc\crtbld\crt\src\newop.cpp (12): operator new
f:\vs70builds\3077\vc\crtbld\crt\src\newaop.cpp (7): operator new[]
c:\temp\cegui\cegui_mk2\src\ceguistring.cpp (68): CEGUI::String::grow
c:\temp\cegui\cegui_mk2\include\ceguistring.h (1328): CEGUI::String::assign
c:\temp\cegui\cegui_mk2\include\ceguistring.h (405): CEGUI::String::String
c:\temp\cegui\cegui_mk2\include\ceguiproperty.h (86): CEGUI::Property::Property
c:\temp\cegui\cegui_mk2\src\ceguifontproperties.cpp (117): CEGUI::FontProperties::ResourceGroup::ResourceGroup
c:\temp\cegui\cegui_mk2\src\ceguifontproperties.cpp (263): CEGUI::Font::addFontProperties
c:\temp\cegui\cegui_mk2\src\ceguifont.cpp (91): CEGUI::Font::Font
c:\temp\cegui\cegui_mk2\src\ceguifreetypefont.cpp (91): CEGUI::FreeTypeFont::FreeTypeFont
c:\temp\cegui\cegui_mk2\src\ceguifontmanager.cpp (160): CEGUI::FontManager::createFont
c:\temp\cegui\cegui_mk2\src\ceguifont_xmlhandler.cpp (85): CEGUI::Font_xmlHandler::elementFontStart
c:\temp\cegui\cegui_mk2\src\ceguifont_xmlhandler.cpp (61): CEGUI::Font_xmlHandler::elementStart
0x01B2E4F7 (File and line number not available): (Function name unavailable)
0x01B36DB7 (File and line number not available): (Function name unavailable)
0x01B39810 (File and line number not available): (Function name unavailable)
0x01B3B635 (File and line number not available): (Function name unavailable)
0x01B3AD6C (File and line number not available): (Function name unavailable)
0x01B3A5BA (File and line number not available): (Function name unavailable)
0x01B34E29 (File and line number not available): (Function name unavailable)
0x01B34CA5 (File and line number not available): (Function name unavailable)
0x01B2DE86 (File and line number not available): (Function name unavailable)
c:\temp\cegui\cegui_mk2\src\ceguifontmanager.cpp (97): CEGUI::FontManager::createFont
c:\temp\cegui\cegui_mk2\samples\fontdemo\src\sample_fontdemo.cpp (100): FontDemo::initialiseSample
c:\temp\cegui\cegui_mk2\samples\common\src\ceguid3d9baseapplication.cpp (154): CEGuiD3D9BaseApplication::execute
c:\temp\cegui\cegui_mk2\samples\common\src\ceguisample.cpp (231): CEGuiSample::initialise
c:\temp\cegui\cegui_mk2\samples\common\src\ceguisample.cpp (120): CEGuiSample::run
c:\temp\cegui\cegui_mk2\samples\fontdemo\src\sample_fontdemo.cpp (294): main
f:\vs70builds\3077\vc\crtbld\crt\src\crtexe.c (398): mainCRTStartup
0x7C816FD7 (File and line number not available): RegisterWaitForInputIdle
Data:
54 00 00 00 68 00 00 00 69 00 00 00 73 00 00 00 T...h... i...s...
20 00 00 00 69 00 00 00 73 00 00 00 20 00 00 00 ....i... s.......
74 00 00 00 68 00 00 00 65 00 00 00 20 00 00 00 t...h... e.......
72 00 00 00 65 00 00 00 73 00 00 00 6F 00 00 00 r...e... s...o...
75 00 00 00 72 00 00 00 63 00 00 00 65 00 00 00 u...r... c...e...
20 00 00 00 67 00 00 00 72 00 00 00 6F 00 00 00 ....g... r...o...
75 00 00 00 70 00 00 00 20 00 00 00 66 00 00 00 u...p... ....f...
6F 00 00 00 72 00 00 00 20 00 00 00 66 00 00 00 o...r... ....f...
6F 00 00 00 6E 00 00 00 74 00 00 00 20 00 00 00 o...n... t.......
66 00 00 00 69 00 00 00 6C 00 00 00 65 00 00 00 f...i... l...e...
20 00 00 00 6E 00 00 00 61 00 00 00 6D 00 00 00 ....n... a...m...
65 00 00 00 2E 00 00 00 00 00 00 00 e....... ........

---------- Block 58751 at 0x00E49D30: 208 bytes ----------
Call Stack:
f:\vs70builds\3077\vc\crtbld\crt\src\newop.cpp (12): operator new
f:\vs70builds\3077\vc\crtbld\crt\src\newaop.cpp (7): operator new[]
c:\temp\cegui\cegui_mk2\src\ceguistring.cpp (68): CEGUI::String::grow
c:\temp\cegui\cegui_mk2\include\ceguistring.h (1328): CEGUI::String::assign
c:\temp\cegui\cegui_mk2\include\ceguistring.h (405): CEGUI::String::String
c:\temp\cegui\cegui_mk2\include\ceguiproperty.h (86): CEGUI::Property::Property
c:\temp\cegui\cegui_mk2\src\ceguifontproperties.cpp (98): CEGUI::FontProperties::FileName::FileName
c:\temp\cegui\cegui_mk2\src\ceguifontproperties.cpp (262): CEGUI::Font::addFontProperties
c:\temp\cegui\cegui_mk2\src\ceguifont.cpp (91): CEGUI::Font::Font
c:\temp\cegui\cegui_mk2\src\ceguifreetypefont.cpp (91): CEGUI::FreeTypeFont::FreeTypeFont
c:\temp\cegui\cegui_mk2\src\ceguifontmanager.cpp (160): CEGUI::FontManager::createFont
c:\temp\cegui\cegui_mk2\src\ceguifont_xmlhandler.cpp (85): CEGUI::Font_xmlHandler::elementFontStart
c:\temp\cegui\cegui_mk2\src\ceguifont_xmlhandler.cpp (61): CEGUI::Font_xmlHandler::elementStart
0x01B2E4F7 (File and line number not available): (Function name unavailable)
0x01B36DB7 (File and line number not available): (Function name unavailable)
0x01B39810 (File and line number not available): (Function name unavailable)
0x01B3B635 (File and line number not available): (Function name unavailable)
0x01B3AD6C (File and line number not available): (Function name unavailable)
0x01B3A5BA (File and line number not available): (Function name unavailable)
0x01B34E29 (File and line number not available): (Function name unavailable)
0x01B34CA5 (File and line number not available): (Function name unavailable)
0x01B2DE86 (File and line number not available): (Function name unavailable)
c:\temp\cegui\cegui_mk2\src\ceguifontmanager.cpp (97): CEGUI::FontManager::createFont
c:\temp\cegui\cegui_mk2\samples\fontdemo\src\sample_fontdemo.cpp (100): FontDemo::initialiseSample
c:\temp\cegui\cegui_mk2\samples\common\src\ceguid3d9baseapplication.cpp (154): CEGuiD3D9BaseApplication::execute
c:\temp\cegui\cegui_mk2\samples\common\src\ceguisample.cpp (231): CEGuiSample::initialise
c:\temp\cegui\cegui_mk2\samples\common\src\ceguisample.cpp (120): CEGuiSample::run
c:\temp\cegui\cegui_mk2\samples\fontdemo\src\sample_fontdemo.cpp (294): main
f:\vs70builds\3077\vc\crtbld\crt\src\crtexe.c (398): mainCRTStartup
0x7C816FD7 (File and line number not available): RegisterWaitForInputIdle
Data:
54 00 00 00 68 00 00 00 69 00 00 00 73 00 00 00 T...h... i...s...
20 00 00 00 69 00 00 00 73 00 00 00 20 00 00 00 ....i... s.......
74 00 00 00 68 00 00 00 65 00 00 00 20 00 00 00 t...h... e.......
66 00 00 00 69 00 00 00 6C 00 00 00 65 00 00 00 f...i... l...e...
6E 00 00 00 61 00 00 00 6D 00 00 00 65 00 00 00 n...a... m...e...
20 00 00 00 66 00 00 00 72 00 00 00 6F 00 00 00 ....f... r...o...
6D 00 00 00 20 00 00 00 77 00 00 00 68 00 00 00 m....... w...h...
69 00 00 00 63 00 00 00 68 00 00 00 20 00 00 00 i...c... h.......
74 00 00 00 68 00 00 00 65 00 00 00 20 00 00 00 t...h... e.......
66 00 00 00 6F 00 00 00 6E 00 00 00 74 00 00 00 f...o... n...t...
20 00 00 00 69 00 00 00 73 00 00 00 20 00 00 00 ....i... s.......
6C 00 00 00 6F 00 00 00 61 00 00 00 64 00 00 00 l...o... a...d...
65 00 00 00 64 00 00 00 2E 00 00 00 00 00 00 00 e...d... ........

---------- Block 58749 at 0x00E49960: 156 bytes ----------
Call Stack:
f:\vs70builds\3077\vc\crtbld\crt\src\newop.cpp (12): operator new
f:\vs70builds\3077\vc\crtbld\crt\src\newaop.cpp (7): operator new[]
c:\temp\cegui\cegui_mk2\src\ceguistring.cpp (68): CEGUI::String::grow
c:\temp\cegui\cegui_mk2\include\ceguistring.h (1328): CEGUI::String::assign
c:\temp\cegui\cegui_mk2\include\ceguistring.h (405): CEGUI::String::String
c:\temp\cegui\cegui_mk2\include\ceguiproperty.h (86): CEGUI::Property::Property
c:\temp\cegui\cegui_mk2\src\ceguifontproperties.cpp (79): CEGUI::FontProperties::Name::Name
c:\temp\cegui\cegui_mk2\src\ceguifontproperties.cpp (261): CEGUI::Font::addFontProperties
c:\temp\cegui\cegui_mk2\src\ceguifont.cpp (91): CEGUI::Font::Font
c:\temp\cegui\cegui_mk2\src\ceguifreetypefont.cpp (91): CEGUI::FreeTypeFont::FreeTypeFont
c:\temp\cegui\cegui_mk2\src\ceguifontmanager.cpp (160): CEGUI::FontManager::createFont
c:\temp\cegui\cegui_mk2\src\ceguifont_xmlhandler.cpp (85): CEGUI::Font_xmlHandler::elementFontStart
c:\temp\cegui\cegui_mk2\src\ceguifont_xmlhandler.cpp (61): CEGUI::Font_xmlHandler::elementStart
0x01B2E4F7 (File and line number not available): (Function name unavailable)
0x01B36DB7 (File and line number not available): (Function name unavailable)
0x01B39810 (File and line number not available): (Function name unavailable)
0x01B3B635 (File and line number not available): (Function name unavailable)
0x01B3AD6C (File and line number not available): (Function name unavailable)
0x01B3A5BA (File and line number not available): (Function name unavailable)
0x01B34E29 (File and line number not available): (Function name unavailable)
0x01B34CA5 (File and line number not available): (Function name unavailable)
0x01B2DE86 (File and line number not available): (Function name unavailable)
c:\temp\cegui\cegui_mk2\src\ceguifontmanager.cpp (97): CEGUI::FontManager::createFont
c:\temp\cegui\cegui_mk2\samples\fontdemo\src\sample_fontdemo.cpp (100): FontDemo::initialiseSample
c:\temp\cegui\cegui_mk2\samples\common\src\ceguid3d9baseapplication.cpp (154): CEGuiD3D9BaseApplication::execute
c:\temp\cegui\cegui_mk2\samples\common\src\ceguisample.cpp (231): CEGuiSample::initialise
c:\temp\cegui\cegui_mk2\samples\common\src\ceguisample.cpp (120): CEGuiSample::run
c:\temp\cegui\cegui_mk2\samples\fontdemo\src\sample_fontdemo.cpp (294): main
f:\vs70builds\3077\vc\crtbld\crt\src\crtexe.c (398): mainCRTStartup
0x7C816FD7 (File and line number not available): RegisterWaitForInputIdle
Data:
54 00 00 00 68 00 00 00 69 00 00 00 73 00 00 00 T...h... i...s...
20 00 00 00 69 00 00 00 73 00 00 00 20 00 00 00 ....i... s.......
66 00 00 00 6F 00 00 00 6E 00 00 00 74 00 00 00 f...o... n...t...
20 00 00 00 6E 00 00 00 61 00 00 00 6D 00 00 00 ....n... a...m...
65 00 00 00 2E 00 00 00 20 00 00 00 20 00 00 00 e....... ........
56 00 00 00 61 00 00 00 6C 00 00 00 75 00 00 00 V...a... l...u...
65 00 00 00 20 00 00 00 69 00 00 00 73 00 00 00 e....... i...s...
20 00 00 00 61 00 00 00 20 00 00 00 73 00 00 00 ....a... ....s...
74 00 00 00 72 00 00 00 69 00 00 00 6E 00 00 00 t...r... i...n...
67 00 00 00 2E 00 00 00 00 00 00 00 g....... ........

---------- Block 58747 at 0x00E49AC0: 292 bytes ----------
Call Stack:
f:\vs70builds\3077\vc\crtbld\crt\src\newop.cpp (12): operator new
f:\vs70builds\3077\vc\crtbld\crt\src\newaop.cpp (7): operator new[]
c:\temp\cegui\cegui_mk2\src\ceguistring.cpp (68): CEGUI::String::grow
c:\temp\cegui\cegui_mk2\include\ceguistring.h (1328): CEGUI::String::assign
c:\temp\cegui\cegui_mk2\include\ceguistring.h (405): CEGUI::String::String
c:\temp\cegui\cegui_mk2\include\ceguiproperty.h (86): CEGUI::Property::Property
c:\temp\cegui\cegui_mk2\src\ceguifontproperties.cpp (57): CEGUI::FontProperties::NativeRes::NativeRes
c:\temp\cegui\cegui_mk2\src\ceguifontproperties.cpp (260): CEGUI::Font::addFontProperties
c:\temp\cegui\cegui_mk2\src\ceguifont.cpp (91): CEGUI::Font::Font
c:\temp\cegui\cegui_mk2\src\ceguifreetypefont.cpp (91): CEGUI::FreeTypeFont::FreeTypeFont
c:\temp\cegui\cegui_mk2\src\ceguifontmanager.cpp (160): CEGUI::FontManager::createFont
c:\temp\cegui\cegui_mk2\src\ceguifont_xmlhandler.cpp (85): CEGUI::Font_xmlHandler::elementFontStart
c:\temp\cegui\cegui_mk2\src\ceguifont_xmlhandler.cpp (61): CEGUI::Font_xmlHandler::elementStart
0x01B2E4F7 (File and line number not available): (Function name unavailable)
0x01B36DB7 (File and line number not available): (Function name unavailable)
0x01B39810 (File and line number not available): (Function name unavailable)
0x01B3B635 (File and line number not available): (Function name unavailable)
0x01B3AD6C (File and line number not available): (Function name unavailable)
0x01B3A5BA (File and line number not available): (Function name unavailable)
0x01B34E29 (File and line number not available): (Function name unavailable)
0x01B34CA5 (File and line number not available): (Function name unavailable)
0x01B2DE86 (File and line number not available): (Function name unavailable)
c:\temp\cegui\cegui_mk2\src\ceguifontmanager.cpp (97): CEGUI::FontManager::createFont
c:\temp\cegui\cegui_mk2\samples\fontdemo\src\sample_fontdemo.cpp (100): FontDemo::initialiseSample
c:\temp\cegui\cegui_mk2\samples\common\src\ceguid3d9baseapplication.cpp (154): CEGuiD3D9BaseApplication::execute
c:\temp\cegui\cegui_mk2\samples\common\src\ceguisample.cpp (231): CEGuiSample::initialise
c:\temp\cegui\cegui_mk2\samples\common\src\ceguisample.cpp (120): CEGuiSample::run
c:\temp\cegui\cegui_mk2\samples\fontdemo\src\sample_fontdemo.cpp (294): main
f:\vs70builds\3077\vc\crtbld\crt\src\crtexe.c (398): mainCRTStartup
0x7C816FD7 (File and line number not available): RegisterWaitForInputIdle
Data:
4E 00 00 00 61 00 00 00 74 00 00 00 69 00 00 00 N...a... t...i...
76 00 00 00 65 00 00 00 20 00 00 00 73 00 00 00 v...e... ....s...
63 00 00 00 72 00 00 00 65 00 00 00 65 00 00 00 c...r... e...e...
6E 00 00 00 20 00 00 00 72 00 00 00 65 00 00 00 n....... r...e...
73 00 00 00 6F 00 00 00 6C 00 00 00 75 00 00 00 s...o... l...u...
74 00 00 00 69 00 00 00 6F 00 00 00 6E 00 00 00 t...i... o...n...
20 00 00 00 66 00 00 00 6F 00 00 00 72 00 00 00 ....f... o...r...
20 00 00 00 74 00 00 00 68 00 00 00 69 00 00 00 ....t... h...i...
73 00 00 00 20 00 00 00 66 00 00 00 6F 00 00 00 s....... f...o...
6E 00 00 00 74 00 00 00 2E 00 00 00 20 00 00 00 n...t... ........
56 00 00 00 61 00 00 00 6C 00 00 00 75 00 00 00 V...a... l...u...
65 00 00 00 20 00 00 00 75 00 00 00 73 00 00 00 e....... u...s...
65 00 00 00 73 00 00 00 20 00 00 00 74 00 00 00 e...s... ....t...
68 00 00 00 65 00 00 00 20 00 00 00 27 00 00 00 h...e... ....'...
77 00 00 00 3A 00 00 00 23 00 00 00 20 00 00 00 w...:... #.......
68 00 00 00 3A 00 00 00 23 00 00 00 27 00 00 00 h...:... #...'...
20 00 00 00 66 00 00 00 6F 00 00 00 72 00 00 00 ....f... o...r...
6D 00 00 00 61 00 00 00 74 00 00 00 2E 00 00 00 m...a... t.......
00 00 00 00 ........ ........

Did anyone has the same memory leaking problem like what I have?

Posted: Tue Nov 14, 2006 09:50
by CrazyEddie
Hi,

All of those 'leaks' are the memory allocated for the strings used in static objects, and so may be hanging around after the main cleanup has occurred.

Just for info, since we have an absolutely huge reliance upon CEGUI::String, if it really was leaking memory, I believe you would see a much, much larger number of leaks reported.

CE.