diff --git a/gui/qt/main_window.py b/gui/qt/main_window.py index dc9a30c2..d71418dd 100644 --- a/gui/qt/main_window.py +++ b/gui/qt/main_window.py @@ -163,6 +163,10 @@ class ElectrumWindow(QMainWindow, PrintError): self.connect(self, QtCore.SIGNAL('network'), self.on_network_qt) interests = ['updated', 'new_transaction', 'status', 'banner', 'verified'] + # To avoid leaking references to "self" that prevent the + # window from being GC-ed when closed, callbacks should be + # methods of this class only, and specifically not be + # partials, lambdas or methods of subobjects. Hence... self.network.register_callback(self.on_network, interests) # set initial message self.console.showMessage(self.network.banner)