libindicate, libdbusmenu, indicator-messages-service memleaks
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
DBus Menu |
Fix Released
|
Undecided
|
Unassigned | ||
Messaging Menu |
Fix Released
|
Undecided
|
Unassigned | ||
Unity Foundations |
Fix Released
|
Undecided
|
Unassigned | ||
libindicate |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
affects libindicate
affects dbusmenu
affects indicator-messages
As per the title, these projects leak memory. dbus_g_
to free the memory it allocates, including the GErrors. The patch attached does
that.
indicator-messages has an additional leak, which I'm not sure is libdbusmenu's
or indicator-messages' fault. libdbusmenu passes a GdkPixbuf into
indicator-messages, indicator-messages scales it and doesn't free the original
pixbuf. However, libdbusmenu doesn't free those pixbufs either, so it gets
leaked. The same thing happened with indicator-sound, but the patch for that has
already been committed.
These patches are by no means complete. I'm just hunting down memleaks one by
one using Valgrind's massif, and targeting functions that allocate too much memory.
--
Kind regards,
Loong Jin
Related branches
- Conor Curran (community): Approve
-
Diff: 26 lines (+3/-0)1 file modifiedlibindicate/listener.c (+3/-0)
- Conor Curran (community): Approve
-
Diff: 43 lines (+4/-8)1 file modifiedsrc/indicator-messages.c (+4/-8)
- Mikkel Kamstrup Erlandsen (community): Approve
-
Diff: 67 lines (+12/-3)2 files modifiedlibdbusmenu-glib/client.c (+4/-1)
libdbusmenu-glib/menuitem.c (+8/-2)
- Ken VanDine: Approve
- Sebastien Bacher: Pending requested
-
Diff: 20244 lines (+9654/-9078)48 files modifiedAUTHORS (+4/-0)
ChangeLog (+128/-0)
Makefile.am (+11/-2)
Makefile.in (+14/-4)
aclocal.m4 (+48/-8661)
bindings/Makefile.am (+9/-1)
bindings/Makefile.in (+11/-3)
bindings/mono/Makefile.in (+7/-1)
bindings/mono/indicate-gtk/Makefile.in (+7/-1)
bindings/mono/indicate/Makefile.in (+7/-1)
bindings/mono/indicate/indicate-api.raw (+10/-0)
bindings/python/Makefile.in (+7/-1)
configure (+421/-94)
configure.ac (+84/-29)
debian/changelog (+11/-0)
debian/patches/lp_690668.patch (+0/-28)
docs/Makefile.in (+7/-1)
docs/reference/Makefile.in (+7/-1)
docs/reference/html/IndicateIndicator.html (+4/-4)
docs/reference/html/IndicateListener.html (+4/-4)
docs/reference/html/IndicateServer.html (+2/-2)
docs/reference/html/base.html (+2/-2)
docs/reference/html/index.html (+2/-2)
docs/reference/html/ix01.html (+3/-3)
docs/reference/html/libindicate.devhelp (+0/-77)
docs/reference/html/listeners.html (+2/-2)
docs/reference/html/subclass.html (+2/-2)
docs/reference/tmpl/indicator.sgml (+0/-2)
docs/reference/tmpl/listener.sgml (+0/-2)
docs/reference/tmpl/server.sgml (+0/-2)
docs/reference/version.xml (+1/-1)
docs/reference/xml/indicator.xml (+2/-2)
docs/reference/xml/listener.xml (+2/-2)
examples/Makefile.am (+11/-9)
examples/Makefile.in (+49/-74)
gtk-doc.make (+71/-55)
libindicate-gtk/Makefile.in (+7/-1)
libindicate/Makefile.in (+7/-1)
libindicate/listener.c (+2/-0)
m4/gnome-doc-utils.m4 (+56/-0)
m4/gtk-doc.m4 (+67/-0)
m4/introspection.m4 (+94/-0)
m4/libtool.m4 (+7851/-0)
m4/ltoptions.m4 (+369/-0)
m4/ltsugar.m4 (+123/-0)
m4/ltversion.m4 (+23/-0)
m4/lt~obsolete.m4 (+98/-0)
tests/Makefile.in (+7/-1)
- Ken VanDine: Pending requested
-
Diff: 174 lines (+27/-55)8 files modifiedAUTHORS (+1/-0)
ChangeLog (+12/-0)
configure (+1/-1)
configure.ac (+1/-1)
debian/changelog (+8/-0)
debian/patches/lp_690668.patch (+0/-44)
debian/patches/series (+0/-1)
src/indicator-messages.c (+4/-8)
Changed in libindicate: | |
status: | In Progress → Fix Committed |
milestone: | none → 0.5.92 |
Changed in libindicate: | |
milestone: | 0.5.92 → 0.6.0 |
Changed in unity-foundations: | |
status: | New → In Progress |
milestone: | none → oneiric-beta-2 |
Changed in libindicate: | |
status: | Fix Committed → Fix Released |
Changed in dbusmenu: | |
status: | In Progress → Fix Released |
Changed in unity-foundations: | |
milestone: | oneiric-beta-2 → oneiric-final |
Changed in indicator-messages: | |
status: | In Progress → Fix Committed |
milestone: | none → 0.4.96 |
Changed in unity-foundations: | |
status: | In Progress → Fix Committed |
Changed in indicator-messages: | |
milestone: | 0.4.96 → 0.5.0 |
status: | Fix Committed → Fix Released |
Changed in unity-foundations: | |
status: | Fix Committed → Fix Released |
Updated dbusmenu and libindicate patches to free GValues as well. I think the dbusmenu one is particularly prominent -- the GHashTable doesn't free the GValue for you if you don't give it a freeing function.