electrum

Electrum Bitcoin wallet
git clone https://git.parazyd.org/electrum
Log | Files | Refs | Submodules

commit fcfe3406b33e6a8304d91d22fe84ef87883d461f
parent 76e2fadc31c5274b9d572fa22f9eda1358bbad73
Author: SomberNight <somber.night@protonmail.com>
Date:   Tue,  1 May 2018 14:11:34 +0200

keepkey: fix threading issue during recovery

Diffstat:
Mplugins/keepkey/qt_generic.py | 8+++++++-
1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/plugins/keepkey/qt_generic.py b/plugins/keepkey/qt_generic.py @@ -132,11 +132,13 @@ class QtHandler(QtHandlerBase): char_signal = pyqtSignal(object) pin_signal = pyqtSignal(object) + close_char_dialog_signal = pyqtSignal() def __init__(self, win, pin_matrix_widget_class, device): super(QtHandler, self).__init__(win, device) self.char_signal.connect(self.update_character_dialog) self.pin_signal.connect(self.pin_dialog) + self.close_char_dialog_signal.connect(self._close_char_dialog) self.pin_matrix_widget_class = pin_matrix_widget_class self.character_dialog = None @@ -146,9 +148,13 @@ class QtHandler(QtHandlerBase): self.done.wait() data = self.character_dialog.data if not data or 'done' in data: + self.close_char_dialog_signal.emit() + return data + + def _close_char_dialog(self): + if self.character_dialog: self.character_dialog.accept() self.character_dialog = None - return data def get_pin(self, msg): self.done.clear()