2011-05-24 18:53:13 |
JKL |
bug |
|
|
added bug |
2011-05-24 18:53:13 |
JKL |
attachment added |
|
patched against natty version appmenu-gtk_0.2.1-0ubuntu3 https://bugs.launchpad.net/bugs/787736/+attachment/2141293/+files/fix-memory-leaks |
|
2011-05-25 17:35:51 |
Brian Murray |
bug |
|
|
added subscriber Ubuntu Review Team |
2011-05-25 17:35:53 |
Brian Murray |
tags |
|
patch |
|
2011-05-28 02:07:36 |
Mathieu Trudel-Lapierre |
appmenu-gtk (Ubuntu): status |
New |
Triaged |
|
2011-05-28 02:07:51 |
Mathieu Trudel-Lapierre |
appmenu-gtk (Ubuntu): importance |
Undecided |
Medium |
|
2011-05-28 02:08:09 |
Mathieu Trudel-Lapierre |
bug task added |
|
appmenu-gtk |
|
2011-06-17 02:52:18 |
Launchpad Janitor |
branch linked |
|
lp:~ted/appmenu-gtk/lp787736 |
|
2011-06-17 03:03:45 |
Ted Gould |
appmenu-gtk: status |
New |
In Progress |
|
2011-06-17 03:03:49 |
Ted Gould |
appmenu-gtk: importance |
Undecided |
Medium |
|
2011-06-17 03:04:01 |
Ted Gould |
bug |
|
|
added subscriber Ted Gould |
2011-06-17 17:08:14 |
JKL |
attachment added |
|
simplify rebuild scheduling https://bugs.launchpad.net/ubuntu/+source/appmenu-gtk/+bug/787736/+attachment/2173140/+files/simplify.patch |
|
2012-01-09 16:16:26 |
Guillaume Giroux |
bug |
|
|
added subscriber Guillaume Giroux |
2012-04-14 18:20:03 |
Charles Kerr |
branch linked |
|
lp:~charlesk/appmenu-gtk/lp-787736 |
|
2012-04-15 16:06:18 |
Charles Kerr |
summary |
memory leak in rebuild |
RebuildData structs are leaked in rebuild() / do_rebiuld() |
|
2012-04-15 16:06:28 |
Charles Kerr |
summary |
RebuildData structs are leaked in rebuild() / do_rebiuld() |
RebuildData structs are leaked in rebuild() / do_rebuild() |
|
2012-04-15 16:06:33 |
Charles Kerr |
appmenu-gtk: assignee |
|
Charles Kerr (charlesk) |
|
2012-04-17 20:23:16 |
Launchpad Janitor |
branch linked |
|
lp:~charlesk/appmenu-gtk/cleanups |
|
2012-04-17 20:23:51 |
Charles Kerr |
branch unlinked |
lp:~charlesk/appmenu-gtk/lp-787736 |
|
|
2012-04-26 14:26:40 |
Launchpad Janitor |
branch linked |
|
lp:~charlesk/appmenu-gtk/lp-787736 |
|
2012-08-29 19:26:45 |
Charles Kerr |
appmenu-gtk: milestone |
|
12.10.1 |
|
2012-09-18 20:07:46 |
Launchpad Janitor |
branch linked |
|
lp:appmenu-gtk |
|
2012-09-19 19:55:33 |
Launchpad Janitor |
appmenu-gtk (Ubuntu): status |
Triaged |
Fix Released |
|
2012-09-19 20:20:26 |
Launchpad Janitor |
branch linked |
|
lp:ubuntu/appmenu-gtk |
|
2012-09-20 04:05:14 |
Charles Kerr |
appmenu-gtk: status |
In Progress |
Fix Committed |
|
2012-09-20 04:07:20 |
Charles Kerr |
appmenu-gtk: status |
Fix Committed |
Fix Released |
|
2012-11-28 00:53:25 |
Launchpad Janitor |
branch linked |
|
lp:~achiang/appmenu-gtk/memleaks-787736-780602 |
|
2012-11-28 19:23:52 |
Alex Chiang |
attachment added |
|
lp787736.patch https://bugs.launchpad.net/ubuntu/+source/appmenu-gtk/+bug/787736/+attachment/3446176/+files/lp787736.patch |
|
2012-11-28 19:26:29 |
Alex Chiang |
description |
Binary package hint: appmenu-gtk
The rebuild function creates a hash table mapping the toplevel to the g_timeout id responsible for doing the refresh.
The rebuild function allocates a RebuildData object to pass to the do_rebuild idle function. The do_rebuild callback function frees this object when it is called.
However, the do_rebuild function isn't guaranteed to be called. In fact the whole point of the hash table seems to be that the callback can be canceled. When that happens, the RebuildData object isn't freed, causing a leak.
Additionally, instead of storing a proper reference to the toplevel in the RebuldData object, a weak pointer is stored instead. But if the weak pointer gets set to null, the do_rebuld function will lose its only copy of that pointer, so it will have no way of cleaning up the associated entry in the hash table. |
[Impact]
This issue affects most and any users of appgtk-menu, such as nm-applet, especially in environments (such as offices) where the detected wireless networks change a lot, and where roaming can occur frequently. See also: LP: #780602
[Test Case]
Run nm-applet for multiple hours:
- Observe that the VPN Connections submenu still opens and lists connections (if VPN connections are configured)
- Observe that the "More networks" submenu for additional detected wireless networks still opens and lists networks.
A common failure case is where such a submenu will open but show an empty list (a piece of menu a few milimeters long).
[Regression Potential]
Minimal, the fixes have been available for a while in the development release (and in other recent releases) with no regressions.
Possible issues could be introducing new memory leaks with the changes however, and although the risk is minimal, this could cause the same failure behavior as listed above under [Test Case].
--
Binary package hint: appmenu-gtk
The rebuild function creates a hash table mapping the toplevel to the g_timeout id responsible for doing the refresh.
The rebuild function allocates a RebuildData object to pass to the do_rebuild idle function. The do_rebuild callback function frees this object when it is called.
However, the do_rebuild function isn't guaranteed to be called. In fact the whole point of the hash table seems to be that the callback can be canceled. When that happens, the RebuildData object isn't freed, causing a leak.
Additionally, instead of storing a proper reference to the toplevel in the RebuldData object, a weak pointer is stored instead. But if the weak pointer gets set to null, the do_rebuld function will lose its only copy of that pointer, so it will have no way of cleaning up the associated entry in the hash table. |
|
2012-11-28 19:37:17 |
Mathieu Trudel-Lapierre |
nominated for series |
|
Ubuntu Precise |
|
2012-11-28 19:37:17 |
Mathieu Trudel-Lapierre |
bug task added |
|
appmenu-gtk (Ubuntu Precise) |
|
2012-11-28 19:37:34 |
Mathieu Trudel-Lapierre |
appmenu-gtk (Ubuntu Precise): importance |
Undecided |
Medium |
|
2012-11-28 19:37:34 |
Mathieu Trudel-Lapierre |
appmenu-gtk (Ubuntu Precise): status |
New |
In Progress |
|
2012-11-28 19:37:34 |
Mathieu Trudel-Lapierre |
appmenu-gtk (Ubuntu Precise): assignee |
|
Mathieu Trudel-Lapierre (mathieu-tl) |
|
2012-11-29 22:46:48 |
Martin Spacek |
bug |
|
|
added subscriber Martin Spacek |
2012-12-01 00:48:33 |
Alex Chiang |
attachment added |
|
appmenu-gtk-1.2.patch https://bugs.launchpad.net/ubuntu/+source/appmenu-gtk/+bug/787736/+attachment/3448636/+files/appmenu-gtk-1.2.patch |
|
2012-12-14 13:08:37 |
Josh Rosenberg |
bug |
|
|
added subscriber Josh Rosenberg |
2012-12-19 16:29:56 |
Marlon Nelson |
bug |
|
|
added subscriber Marlon Nelson |
2013-02-27 01:43:23 |
Colin Watson |
appmenu-gtk (Ubuntu Precise): status |
In Progress |
Fix Committed |
|
2013-02-27 01:43:26 |
Colin Watson |
bug |
|
|
added subscriber Ubuntu Stable Release Updates Team |
2013-02-27 01:43:31 |
Colin Watson |
bug |
|
|
added subscriber SRU Verification |
2013-02-27 01:43:34 |
Colin Watson |
tags |
patch |
patch verification-needed |
|
2013-02-27 02:14:05 |
Launchpad Janitor |
branch linked |
|
lp:ubuntu/precise-proposed/appmenu-gtk |
|
2013-03-01 02:15:08 |
Marlon Nelson |
tags |
patch verification-needed |
patch verification-failed |
|
2014-07-30 09:09:22 |
Mathew Hodson |
appmenu-gtk (Ubuntu Precise): status |
Fix Committed |
In Progress |
|
2016-05-12 13:27:26 |
Martin Pitt |
removed subscriber Ubuntu Stable Release Updates Team |
|
|
|
2016-05-12 13:27:27 |
Martin Pitt |
removed subscriber SRU Verification |
|
|
|
2016-05-12 13:29:12 |
Martin Pitt |
appmenu-gtk (Ubuntu Precise): status |
In Progress |
Won't Fix |
|