Hi.

I want to get some information about leaks in clutter.

Using version 0.6.4 there are some leaks in clutter code.

There are five main parts of leak

1- clutter_init 
2- clutter_actor_set_position
3- clutter_stage_hide_cursor
4- pango_clutter_render_layout
5- clutter_actor_get_width

I attached the valgrind output
Can u please check and tell me what can be wrong?
And what can i do to avoid these leaks?

-- 
Uygar GUMUS
VESTEK Elektronik Arastirma Gelistirme A.S.
Adres   : ITU Ayazaga Kampusu Ari 2-B/7
34469 Maslak / Istanbul         
Tel        : 0212 285 21 20  dahili:147
Faks       : 0212 285 28 30
e-mail     : [EMAIL PROTECTED]
20 bytes in 1 blocks are definitely lost in loss record 6 of 80
   at 0x4022825: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
   by 0x44E1EF5: g_malloc (in /usr/lib/libglib-2.0.so.0.1400.1)
   by 0x4500162: g_timer_new (in /usr/lib/libglib-2.0.so.0.1400.1)
   by 0x4096582: clutter_context_get_default (clutter-main.c:701)
   by 0x40969CE: clutter_get_option_group (clutter-main.c:898)
   by 0x4096AF5: clutter_init (clutter-main.c:1025)
   by 0x40561F3: vClutter::Init(int*, char***) (vclutter.cpp:41)
   by 0x804ECE4: main (teevee.cpp:40)



28 bytes in 1 blocks are possibly lost in loss record 12 of 80
   at 0x4022825: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
   by 0x57A9894: FcLangSetCreate (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x57A99AF: FcLangSetCopy (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x57AEF6C: FcValueSave (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x57AF07A: (within /usr/lib/libfontconfig.so.1.2.0)
   by 0x57AF76B: (within /usr/lib/libfontconfig.so.1.2.0)
   by 0x57ABCD8: FcFontRenderPrepare (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x417DFF4: (within /usr/lib/libpangoft2-1.0.so.0.1800.2)
   by 0x41CE4BF: pango_font_map_load_fontset (in 
/usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41CC30E: (within /usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41CC66C: pango_itemize_with_base_dir (in 
/usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41D54EA: (within /usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41D66AC: (within /usr/lib/libpango-1.0.so.0.1800.2)
   by 0x409331A: clutter_label_query_coords (clutter-label.c:328)
   by 0x407C6F1: clutter_actor_query_coords (clutter-actor.c:1356)
   by 0x407D8AF: clutter_actor_set_position (clutter-actor.c:2470)
   by 0x4056BF9: vClutterActor::SetPosition(int, int) const 
(vclutteractor.cpp:78)
   by 0x4059BFB: vClutterLabel::Create(char const*, _ClutterColor*, int, int, 
char const*) (vclutterlabel.cpp:150)
   by 0x4059C8B: vClutterLabel::Create(char const*, char const*, int, int, char 
const*) (vclutterlabel.cpp:139)
   by 0x8059730: vTVInfoBar::vTVInfoBar() (vtvinfobar.cpp:82)
   by 0x805EBD6: vTVMainMenu::vTVMainMenu() (vtvmainmenu.cpp:66)
   by 0x8061979: vTVPageManager::OpenPage(TVPages) (vtvpagemanager.cpp:122)
   by 0x804ED04: main (teevee.cpp:44)


800 bytes in 20 blocks are possibly lost in loss record 40 of 80
   at 0x4021B64: calloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
   by 0x44E1E5D: g_malloc0 (in /usr/lib/libglib-2.0.so.0.1400.1)
   by 0x422FC47: (within /usr/lib/libgobject-2.0.so.0.1400.1)
   by 0x422FDE4: (within /usr/lib/libgobject-2.0.so.0.1400.1)
   by 0x42303BC: g_type_init_with_debug_flags (in 
/usr/lib/libgobject-2.0.so.0.1400.1)
   by 0x4230511: g_type_init (in /usr/lib/libgobject-2.0.so.0.1400.1)
   by 0x409635A: clutter_base_init (clutter-main.c:1568)
   by 0x4096A94: clutter_init (clutter-main.c:1062)
   by 0x40561F3: vClutter::Init(int*, char***) (vclutter.cpp:41)
   by 0x804ECE4: main (teevee.cpp:40)


980 (68 direct, 912 indirect) bytes in 1 blocks are definitely lost in loss 
record 44 of 80
   at 0x4022922: realloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
   by 0x47594DF: (within /usr/lib/libX11.so.6.2.0)
   by 0x475A13E: (within /usr/lib/libX11.so.6.2.0)
   by 0x475B6FF: (within /usr/lib/libX11.so.6.2.0)
   by 0x475BF17: _XlcCreateLC (in /usr/lib/libX11.so.6.2.0)
   by 0x477F129: _XlcUtf8Loader (in /usr/lib/libX11.so.6.2.0)
   by 0x47639A2: _XOpenLC (in /usr/lib/libX11.so.6.2.0)
   by 0x4763A9D: _XrmInitParseInfo (in /usr/lib/libX11.so.6.2.0)
   by 0x4749EE0: (within /usr/lib/libX11.so.6.2.0)
   by 0x474B9C7: XrmGetStringDatabase (in /usr/lib/libX11.so.6.2.0)
   by 0x472A0C9: (within /usr/lib/libX11.so.6.2.0)
   by 0x472A2BC: XGetDefault (in /usr/lib/libX11.so.6.2.0)
   by 0x6600353: _XcursorGetDisplayInfo (in /usr/lib/libXcursor.so.1.0.2)
   by 0x660058C: XcursorSupportsARGB (in /usr/lib/libXcursor.so.1.0.2)
   by 0x6602C35: XcursorNoticeCreateBitmap (in /usr/lib/libXcursor.so.1.0.2)
   by 0x4723DB4: _XNoticeCreateBitmap (in /usr/lib/libX11.so.6.2.0)
   by 0x47241CC: XCreatePixmap (in /usr/lib/libX11.so.6.2.0)
   by 0x40B7856: clutter_stage_x11_set_cursor_visible (clutter-stage-x11.c:333)
   by 0x40A4D8E: clutter_stage_hide_cursor (clutter-stage.c:800)
   by 0x405AC45: vClutterStage::vClutterStage() (vclutterstage.cpp:36)
   by 0x8067837: vTVStage::vTVStage() (vtvstage.cpp:23)
   by 0x8061B83: vTVPageManager::vTVPageManager() (vtvpagemanager.cpp:36)
   by 0x8061C01: vTVPageManager::Instance() (vtvpagemanager.cpp:49)
   by 0x804ECEE: main (teevee.cpp:43)


225 bytes in 10 blocks are definitely lost in loss record 47 of 80
   at 0x4022825: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
   by 0x57B0E17: FcStrCopy (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x57B44A4: (within /usr/lib/libfontconfig.so.1.2.0)
   by 0x577E179: (within /lib/libexpat.so.1.5.2)
   by 0x577EF1C: (within /lib/libexpat.so.1.5.2)
   by 0x57787BB: XML_ParseBuffer (in /lib/libexpat.so.1.5.2)
   by 0x57B3649: FcConfigParseAndLoad (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x57B392A: FcConfigParseAndLoad (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x57B3CC1: (within /usr/lib/libfontconfig.so.1.2.0)
   by 0x577E179: (within /lib/libexpat.so.1.5.2)
   by 0x577EF1C: (within /lib/libexpat.so.1.5.2)
   by 0x577FA97: (within /lib/libexpat.so.1.5.2)
   by 0x5780E74: (within /lib/libexpat.so.1.5.2)
   by 0x57787BB: XML_ParseBuffer (in /lib/libexpat.so.1.5.2)
   by 0x57B3649: FcConfigParseAndLoad (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x57A8905: FcInitLoadConfig (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x57A8A2B: FcInitLoadConfigAndFonts (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x57A8B2B: FcInit (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x57A058E: FcConfigGetCurrent (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x57A0CA4: FcConfigSubstituteWithPat (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x57A0CE6: FcConfigSubstitute (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x40AD167: pango_clutter_font_map_default_substitute 
(pangoclutter-fontmap.c:189)
   by 0x417BAB2: (within /usr/lib/libpangoft2-1.0.so.0.1800.2)
   by 0x417DEE2: (within /usr/lib/libpangoft2-1.0.so.0.1800.2)
   by 0x41CE4BF: pango_font_map_load_fontset (in 
/usr/lib/libpango-1.0.so.0.1800.2)
   by 0x417E2F4: (within /usr/lib/libpangoft2-1.0.so.0.1800.2)
   by 0x41CE548: pango_font_map_load_font (in /usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41CC978: pango_context_load_font (in /usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41D336A: pango_layout_line_get_extents (in 
/usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41D361E: (within /usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41D67EB: (within /usr/lib/libpango-1.0.so.0.1800.2)
   by 0x409331A: clutter_label_query_coords (clutter-label.c:328)
   by 0x407C6F1: clutter_actor_query_coords (clutter-actor.c:1356)
   by 0x407D8AF: clutter_actor_set_position (clutter-actor.c:2470)
   by 0x805F768: vTVMainMenuItem::SetTitle(char const*) 
(vtvmainmenuitem.cpp:141)
   by 0x805E144: vTVMainMenu::ProcessNode(_xmlNode*, vTVMenu*, int&, int) 
(vtvmainmenu.cpp:234)
   by 0x805E2A1: vTVMainMenu::ParseMenu(char const*) (vtvmainmenu.cpp:192)
   by 0x805EAFD: vTVMainMenu::vTVMainMenu() (vtvmainmenu.cpp:58)
   by 0x8061979: vTVPageManager::OpenPage(TVPages) (vtvpagemanager.cpp:122)
   by 0x804ED04: main (teevee.cpp:44)


1,628 (1,408 direct, 220 indirect) bytes in 11 blocks are definitely lost in 
loss record 54 of 80
   at 0x4022825: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
   by 0x57AE870: (within /usr/lib/libfontconfig.so.1.2.0)
   by 0x57AF154: (within /usr/lib/libfontconfig.so.1.2.0)
   by 0x57AF26E: (within /usr/lib/libfontconfig.so.1.2.0)
   by 0x57B4120: (within /usr/lib/libfontconfig.so.1.2.0)
   by 0x577E179: (within /lib/libexpat.so.1.5.2)
   by 0x577EF1C: (within /lib/libexpat.so.1.5.2)
   by 0x57787BB: XML_ParseBuffer (in /lib/libexpat.so.1.5.2)
   by 0x57B3649: FcConfigParseAndLoad (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x57B392A: FcConfigParseAndLoad (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x57B3CC1: (within /usr/lib/libfontconfig.so.1.2.0)
   by 0x577E179: (within /lib/libexpat.so.1.5.2)
   by 0x577EF1C: (within /lib/libexpat.so.1.5.2)
   by 0x577FA97: (within /lib/libexpat.so.1.5.2)
   by 0x5780E74: (within /lib/libexpat.so.1.5.2)
   by 0x57787BB: XML_ParseBuffer (in /lib/libexpat.so.1.5.2)
   by 0x57B3649: FcConfigParseAndLoad (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x57A8905: FcInitLoadConfig (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x57A8A2B: FcInitLoadConfigAndFonts (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x57A8B2B: FcInit (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x57A058E: FcConfigGetCurrent (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x57A0CA4: FcConfigSubstituteWithPat (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x57A0CE6: FcConfigSubstitute (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x40AD167: pango_clutter_font_map_default_substitute 
(pangoclutter-fontmap.c:189)
   by 0x417BAB2: (within /usr/lib/libpangoft2-1.0.so.0.1800.2)
   by 0x417DEE2: (within /usr/lib/libpangoft2-1.0.so.0.1800.2)
   by 0x41CE4BF: pango_font_map_load_fontset (in 
/usr/lib/libpango-1.0.so.0.1800.2)
   by 0x417E2F4: (within /usr/lib/libpangoft2-1.0.so.0.1800.2)
   by 0x41CE548: pango_font_map_load_font (in /usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41CC978: pango_context_load_font (in /usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41D336A: pango_layout_line_get_extents (in 
/usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41D361E: (within /usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41D67EB: (within /usr/lib/libpango-1.0.so.0.1800.2)
   by 0x409331A: clutter_label_query_coords (clutter-label.c:328)
   by 0x407C6F1: clutter_actor_query_coords (clutter-actor.c:1356)
   by 0x407D8AF: clutter_actor_set_position (clutter-actor.c:2470)
   by 0x805F768: vTVMainMenuItem::SetTitle(char const*) 
(vtvmainmenuitem.cpp:141)
   by 0x805E144: vTVMainMenu::ProcessNode(_xmlNode*, vTVMenu*, int&, int) 
(vtvmainmenu.cpp:234)
   by 0x805E2A1: vTVMainMenu::ParseMenu(char const*) (vtvmainmenu.cpp:192)
   by 0x805EAFD: vTVMainMenu::vTVMainMenu() (vtvmainmenu.cpp:58)
   by 0x8061979: vTVPageManager::OpenPage(TVPages) (vtvpagemanager.cpp:122)
   by 0x804ED04: main (teevee.cpp:44)


162,628 (50,944 direct, 111,684 indirect) bytes in 199 blocks are definitely 
lost in loss record 73 of 80
   at 0x4022922: realloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
   by 0x57AE7F3: (within /usr/lib/libfontconfig.so.1.2.0)
   by 0x57AF154: (within /usr/lib/libfontconfig.so.1.2.0)
   by 0x57AF76B: (within /usr/lib/libfontconfig.so.1.2.0)
   by 0x57ABCD8: FcFontRenderPrepare (in /usr/lib/libfontconfig.so.1.2.0)
   by 0x417DFF4: (within /usr/lib/libpangoft2-1.0.so.0.1800.2)
   by 0x41CE4BF: pango_font_map_load_fontset (in 
/usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41CC30E: (within /usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41CC66C: pango_itemize_with_base_dir (in 
/usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41D54EA: (within /usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41D6A6C: pango_layout_get_iter (in /usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41DC45B: pango_renderer_draw_layout (in 
/usr/lib/libpango-1.0.so.0.1800.2)
   by 0x40AD3A3: pango_clutter_render_layout_subpixel 
(pangoclutter-render.c:501)
   by 0x40AD3EE: pango_clutter_render_layout (pangoclutter-render.c:511)
   by 0x4094C59: clutter_label_paint (clutter-label.c:309)
   by 0x407F3A8: clutter_actor_paint (clutter-actor.c:1242)
   by 0x4092AF4: clutter_group_paint (clutter-group.c:103)
   by 0x407F3A8: clutter_actor_paint (clutter-actor.c:1242)
   by 0x4092AF4: clutter_group_paint (clutter-group.c:103)
   by 0x40A5936: clutter_stage_paint (clutter-stage.c:112)
   by 0x407F3A8: clutter_actor_paint (clutter-actor.c:1242)
   by 0x40AE397: clutter_backend_glx_redraw (clutter-backend-glx.c:343)
   by 0x40824F6: _clutter_backend_redraw (clutter-backend.c:171)
   by 0x4097774: clutter_redraw (clutter-main.c:159)
   by 0x4079F38: redraw_update_idle (clutter-actor.c:289)
   by 0x4097289: clutter_threads_dispatch (clutter-main.c:446)
   by 0x44D8A30: (within /usr/lib/libglib-2.0.so.0.1400.1)
   by 0x44DA5D5: g_main_context_dispatch (in /usr/lib/libglib-2.0.so.0.1400.1)
   by 0x44DD971: (within /usr/lib/libglib-2.0.so.0.1400.1)
   by 0x44DDD56: g_main_loop_run (in /usr/lib/libglib-2.0.so.0.1400.1)
   by 0x40974E4: clutter_main (clutter-main.c:326)
   by 0x40561B2: vClutter::Run() (vclutter.cpp:57)
   by 0x804ED09: main (teevee.cpp:45)


73,520 bytes in 58 blocks are possibly lost in loss record 75 of 80
   at 0x4021A50: memalign (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
   by 0x4021AAA: posix_memalign (in 
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
   by 0x44F6174: (within /usr/lib/libglib-2.0.so.0.1400.1)
   by 0x44F72A9: g_slice_alloc (in /usr/lib/libglib-2.0.so.0.1400.1)
   by 0x44F73B4: g_slice_alloc0 (in /usr/lib/libglib-2.0.so.0.1400.1)
   by 0x41E02BD: (within /usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41E060B: (within /usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41DDBE5: pango_log2vis_get_embedding_levels (in 
/usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41CB792: (within /usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41CC665: pango_itemize_with_base_dir (in 
/usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41D54EA: (within /usr/lib/libpango-1.0.so.0.1800.2)
   by 0x41D66AC: (within /usr/lib/libpango-1.0.so.0.1800.2)
   by 0x409331A: clutter_label_query_coords (clutter-label.c:328)
   by 0x407C6F1: clutter_actor_query_coords (clutter-actor.c:1356)
   by 0x407CD6E: clutter_actor_get_width (clutter-actor.c:2918)
   by 0x4056A59: vClutterActor::GetWidth() const (vclutteractor.cpp:128)
   by 0x805ECB0: vTVMainMenu::vTVMainMenu() (vtvmainmenu.cpp:73)
   by 0x8061979: vTVPageManager::OpenPage(TVPages) (vtvpagemanager.cpp:122)
   by 0x804ED04: main (teevee.cpp:44)

Reply via email to