Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMarco Pesenti Gritti <mpgritti@gmail.com>2008-09-13 11:23:49 (GMT)
committer Marco Pesenti Gritti <mpgritti@gmail.com>2008-09-13 11:23:49 (GMT)
commit6fa05a8cd68826411d355e506385f5439c569a18 (patch)
treea86c29c37dcb293d193bc5df3719127e6cd8f7c2 /src
parent4a0109cbb68043bab5ca684cb6fe0da085eed095 (diff)
Break the reference cycle between menu and palette. #8469
Diffstat (limited to 'src')
-rw-r--r--src/sugar/graphics/palette.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/sugar/graphics/palette.py b/src/sugar/graphics/palette.py
index 40ed800..c0a56fc 100644
--- a/src/sugar/graphics/palette.py
+++ b/src/sugar/graphics/palette.py
@@ -274,6 +274,10 @@ class Palette(gtk.Window):
def __destroy_cb(self, palette):
self.set_group_id(None)
+
+ # Break the reference cycle. It looks like the gc is not able to free
+ # it, possibly because gtk.Menu memory handling is very special.
+ self.menu = None
if self._palette_popup_sid is not None:
_palette_observer.disconnect(self._palette_popup_sid)