diff --git a/gui/qt/__init__.py b/gui/qt/__init__.py index 14fb0100a..2a66bd1fb 100644 --- a/gui/qt/__init__.py +++ b/gui/qt/__init__.py @@ -245,6 +245,9 @@ class ElectrumGui: # main loop self.app.exec_() + # Shut down the timer cleanly + self.timer.stop() + # clipboard persistence. see http://www.mail-archive.com/pyqt@riverbankcomputing.com/msg17328.html event = QtCore.QEvent(QtCore.QEvent.Clipboard) self.app.sendEvent(self.app.clipboard(), event) diff --git a/gui/qt/util.py b/gui/qt/util.py index 8ee62c65a..9ceaf11f8 100644 --- a/gui/qt/util.py +++ b/gui/qt/util.py @@ -61,11 +61,16 @@ class WaitingDialog(QThread): class Timer(QThread): + stopped = False + def run(self): - while True: + while not self.stopped: self.emit(SIGNAL('timersignal')) time.sleep(0.5) + def stop(self): + self.stopped = True + self.wait() class EnterButton(QPushButton): def __init__(self, text, func):