Browse Source

wizard: let UserCancelled propagate out in hw wallet flow

Note that clicking "x" to close the wizard or pressing ESC also raises
a UserCancelled:
raising ChooseHwDeviceAgain was not letting the wizard close.

E | gui.qt.installwizard.InstallWizard |
Traceback (most recent call last):
  File "/home/user/wspace/electrum/electrum/base_wizard.py", line 371, in on_device
    client = self.plugin.setup_device(device_info, self, purpose)
  File "/home/user/wspace/electrum/electrum/plugins/trezor/trezor.py", line 305, in setup_device
    self.initialize_device(device_id, wizard, client.handler)
  File "/home/user/wspace/electrum/electrum/plugins/trezor/trezor.py", line 231, in initialize_device
    wizard.choice_dialog(title=_('Initialize Device'), message=msg, choices=choices, run_next=f)
  File "/home/user/wspace/electrum/electrum/gui/qt/installwizard.py", line 106, in func_wrapper
    out = func(*args, **kwargs)
  File "/home/user/wspace/electrum/electrum/gui/qt/installwizard.py", line 614, in choice_dialog
    self.exec_layout(vbox, title)
  File "/home/user/wspace/electrum/electrum/gui/qt/installwizard.py", line 434, in exec_layout
    raise UserCancelled()
electrum.util.UserCancelled

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/user/wspace/electrum/electrum/base_wizard.py", line 277, in choose_hw_device
    self._choose_hw_device(purpose=purpose, storage=storage)
  File "/home/user/wspace/electrum/electrum/base_wizard.py", line 363, in _choose_hw_device
    self.choice_dialog(title=title, message=msg, choices=choices,
  File "/home/user/wspace/electrum/electrum/gui/qt/installwizard.py", line 120, in func_wrapper
    run_next(*out)
  File "/home/user/wspace/electrum/electrum/base_wizard.py", line 364, in <lambda>
    run_next=lambda *args: self.on_device(*args, purpose=purpose, storage=storage))
  File "/home/user/wspace/electrum/electrum/base_wizard.py", line 386, in on_device
    raise ChooseHwDeviceAgain()
electrum.base_wizard.ChooseHwDeviceAgain
E | gui.qt.installwizard.InstallWizard | choose_hw_device(). while iter starts.
I | plugin.DeviceMgr | scanning devices...
patch-4
SomberNight 4 years ago
parent
commit
e5295701d2
No known key found for this signature in database GPG Key ID: B33B5F232C6271E9
  1. 4
      electrum/base_wizard.py

4
electrum/base_wizard.py

@ -377,8 +377,10 @@ class BaseWizard(Logger):
# will need to re-pair
devmgr.unpair_id(device_info.device.id_)
raise ChooseHwDeviceAgain()
except (UserCancelled, GoBack):
except GoBack:
raise ChooseHwDeviceAgain()
except (UserCancelled, ReRunDialog):
raise
except UserFacingException as e:
self.show_error(str(e))
raise ChooseHwDeviceAgain()

Loading…
Cancel
Save