GNOME Bugzilla – Bug 729717
[patch] Unbounded Memory leak in libgnomecanvas/gnome-canvas.c:paint
Last modified: 2014-11-28 20:37:45 UTC
I'm the maintainer of the XFCE4 port of Hardware Monitor applet previously of GNOME 2 fame (https://github.com/OmegaPhil/hardware-monitor-applet). I have found that running my port or the original code for a few days results in a large unbounded memory leak, reaching 0.75-1GB RSS when ran for a month or more - my bug tracking this: https://github.com/OmegaPhil/hardware-monitor-applet/issues/5 . Its probably particularly bad for this program as the graphs run permanently updating many times a second. It appears that libgnomecanvas/gnome-canvas.c:3114 in the paint function is a pointless gdk_region_new call that isn't cleared up. The patch removes this, after running for a few days I can confirm the ridiculous leak has stopped.
Created attachment 279851 [details] [review] Fix paint memory leak While I've had no feedback, I've noticed the patch isn't here (WTF? why wasn't that added?) - attaching.
The last libgnomecanvas code changes took place in January 2011: https://git.gnome.org/browse/archive/libgnomecanvas/log/ This project is not under active development anymore. This project got recently archived in GNOME Git. It is currently unlikely that there will be any further active development. Closing this report as WONTFIX as part of Bugzilla Housekeeping to reflect reality. Please feel free to reopen this bug report in the future if anyone takes the responsibility for active development again. If you are interested in maintainership, inform https://mail.gnome.org/mailman/listinfo/desktop-devel-list
As this has been ignored, I have created my own amd64 and i386 Debian archives fixing the bug for anyone interested using Debian: https://github.com/OmegaPhil/libgnomecanvas/tree/pkg