GNOME Bugzilla – Bug 628484
e-binding memory leaks
Last modified: 2013-03-20 08:09:30 UTC
==20949== 520 bytes in 5 blocks are definitely lost in loss record 26,267 of 28,897 ==20949== at 0x4A0515D: malloc (vg_replace_malloc.c:195) ==20949== by 0x3D3D645C80: g_malloc (gmem.c:134) ==20949== by 0x3D3D65C796: g_slice_alloc (gslice.c:836) ==20949== by 0x6B3E3A2: e_mutual_binding_new_full (e-binding.c:437) ==20949== by 0x6B3E4BF: e_mutual_binding_new (e-binding.c:370) ==20949== by 0x5BA9D63: attachment_paned_constructed (e-attachment-paned.c:315) ==20949== by 0x3D3DE1388F: g_object_newv (gobject.c:1375) ==20949== by 0x3D3DE1455B: g_object_new (gobject.c:1178) ==20949== by 0xF5DF367: e_composer_private_constructed (e-composer-private.c:276) ==20949== by 0xF5E5260: msg_composer_constructed (e-msg-composer.c:1869) ==20949== by 0x3D3DE1388F: g_object_newv (gobject.c:1375) ==20949== by 0x3D3DE14310: g_object_new_valist (gobject.c:1463)
==20949== 5,096 bytes in 49 blocks are definitely lost in loss record 28,194 of 28,897 ==20949== at 0x4A0515D: malloc (vg_replace_malloc.c:195) ==20949== by 0x3D3D645C80: g_malloc (gmem.c:134) ==20949== by 0x3D3D65C796: g_slice_alloc (gslice.c:836) ==20949== by 0x6B3E3A2: e_mutual_binding_new_full (e-binding.c:437) ==20949== by 0x6B3E4BF: e_mutual_binding_new (e-binding.c:370) ==20949== by 0xF1315B5: mail_attachment_bar_constructed (e-mail-attachment-bar.c:297) ==20949== by 0x3D3DE1388F: g_object_newv (gobject.c:1375) ==20949== by 0x3D3DE14310: g_object_new_valist (gobject.c:1463) ==20949== by 0x3D3DE14540: g_object_new (gobject.c:1181) ==20949== by 0xF163C27: efhd_add_bar (em-format-html-display.c:909) ==20949== by 0xF15F5C8: efh_object_requested (em-format-html.c:1560) ==20949== by 0x703A3B7: html_g_cclosure_marshal_BOOLEAN__OBJECT (htmlmarshal.c:81)
==20949== 5,096 bytes in 49 blocks are definitely lost in loss record 28,195 of 28,897 ==20949== at 0x4A0515D: malloc (vg_replace_malloc.c:195) ==20949== by 0x3D3D645C80: g_malloc (gmem.c:134) ==20949== by 0x3D3D65C796: g_slice_alloc (gslice.c:836) ==20949== by 0x6B3E3A2: e_mutual_binding_new_full (e-binding.c:437) ==20949== by 0x6B3E4BF: e_mutual_binding_new (e-binding.c:370) ==20949== by 0x5BB01A6: e_attachment_view_init (e-attachment-view.c:859) ==20949== by 0x5BADE38: e_attachment_tree_view_init (e-attachment-tree-view.c:513) ==20949== by 0x3D3DE33382: g_type_create_instance (gtype.c:1887) ==20949== by 0x3D3DE108DB: g_object_constructor (gobject.c:1482) ==20949== by 0x3D3DE13308: g_object_newv (gobject.c:1347) ==20949== by 0x3D3DE1455B: g_object_new (gobject.c:1178) ==20949== by 0xF130B7C: mail_attachment_bar_init (e-mail-attachment-bar.c:559)
Strange. I don't know why it thinks these bindings are leaking (but not other bindings?). The binding's lifetime follows the two objects being bound -- when either object is finalized the binding is supposed to destroy itself.
If it's a bug in EBinding itself, we'll be dropping EBinding for 2.34 since GObject has -finally- gained this capability for itself.
As a clue, I see the same with "switcher-visible", which seems to be bind multiple times on a shell_window, at e-shell-window.c:468 e-shell-window-actions.c:1945 I'm not going to break this just few days before the hard code freeze, I'm only writing here what seems to be related.
The EBinding is gone now (3.6/3.8), thus I'm closing this.