Baz Walter wrote: > Before changing the name 'mainwindow' to 'mainwidget' it reports: > > Widgets left: 0 Max widgets: 2 > Widgets left: 0 Max widgets: 149 (full program) > > Afterwards it reports: > > Widgets left: 1 Max widgets: 2 > Widgets left: 146 Max widgets: 149 (full program)
So what you're concerned about is the lack of cleanup during interpreter shutdown, not a true leak (which would result in "Max widgets" growing towards infinity). The problem here is that you're relying on Python's GC to remove things in a given order during shutdown, something that may or may not happen depending on lots of things that you cannot control: http://www.python.org/doc/essays/cleanup/ (Note the repeated use of "In an order determined by the dictionary hashing of the names" in that article.) The only way to get *predictable* shutdown behaviour in situations like this is to clean things up yourself. But in this case, you might as well leave the cleanup to the OS. </F> -- http://mail.python.org/mailman/listinfo/python-list