diff options
author | Marco 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) |
commit | 6fa05a8cd68826411d355e506385f5439c569a18 (patch) | |
tree | a86c29c37dcb293d193bc5df3719127e6cd8f7c2 /src/sugar/graphics/palette.py | |
parent | 4a0109cbb68043bab5ca684cb6fe0da085eed095 (diff) |
Break the reference cycle between menu and palette. #8469
Diffstat (limited to 'src/sugar/graphics/palette.py')
-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) |