Bugs item #1342811, was opened at 2005-10-30 22:49 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1342811&group_id=5470
Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Tkinter Group: Python 2.3 Status: Open Resolution: None Priority: 5 Submitted By: Sverker Nilsson (svenil) Assigned to: Martin v. Löwis (loewis) Summary: Tkinter.Menu.delete doesn't delete command of entry Initial Comment: Tkinter.Menu.delete does not delete the commands defined for the entries it deletes. Those objects will be retained until the menu itself is deleted. For example, after code like this: button = Menubutton(root, text='Window') menu = Menu(button) button['menu'] = menu def command(): print 'command button pressed' menu.add_command(command=command) menu.delete(END) del command the command function will still be referenced and kept in memory - until the menu object itself is destroyed. This may not always be a serious problem, but in my case the menu was a 'Window' menu and the command was a method on a window top level widget, so retaining a pointer to it after deleting the menu entry kept a reference to that entire window, with any associated data. I have figured out a possible fix that is in the attached file test_menuleak.py that contains some test functions. I also changed the comment - for as far as I can see, the second optional index is actually INCLUDED in the range of entries deleted. Version info Python 2.3.3 (#2, Mar 11 2004, 19:45:43) [GCC 2.95.2 20000220 (Debian GNU/Linux)] on linux2 I think it applies to all versions: I tested with the latest 2.4.2 as well. Sverker Nilsson ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1342811&group_id=5470 _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com