diff options
-rw-r--r-- | src/sugar/graphics/palette.py | 4 |
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) |