ttrezor: raise and catch BaseException in signing - electrum - Electrum Bitcoin wallet
HTML git clone https://git.parazyd.org/electrum
DIR Log
DIR Files
DIR Refs
DIR Submodules
---
DIR commit 956f69f3d38f54f689f1909367ca6b89da0e5440
DIR parent 8347ad5449e757d96724faee6cad420ec195931c
HTML Author: ThomasV <thomasv@gitorious>
Date: Fri, 24 Oct 2014 10:53:09 +0200
ttrezor: raise and catch BaseException in signing
Diffstat:
M gui/qt/util.py | 2 +-
M plugins/btchipwallet.py | 4 +++-
M plugins/trezor.py | 4 +++-
3 files changed, 7 insertions(+), 3 deletions(-)
---
DIR diff --git a/gui/qt/util.py b/gui/qt/util.py
t@@ -35,7 +35,7 @@ class WaitingDialog(QThread):
self.error = None
try:
self.result = self.run_task()
- except Exception as e:
+ except BaseException as e:
traceback.print_exc(file=sys.stdout)
self.error = str(e)
self.d.emit(SIGNAL('done'))
DIR diff --git a/plugins/btchipwallet.py b/plugins/btchipwallet.py
t@@ -322,8 +322,10 @@ class BTChipWallet(NewWallet):
return b64encode(chr(27 + 4 + (signature[0] & 0x01)) + r + s)
def sign_transaction(self, tx, keypairs, password):
- if tx.error or tx.is_complete():
+ if tx.is_complete():
return
+ if tx.error:
+ raise BaseException(tx.error)
self.signing = True
inputs = []
inputsPaths = []
DIR diff --git a/plugins/trezor.py b/plugins/trezor.py
t@@ -274,8 +274,10 @@ class TrezorWallet(NewWallet):
return str(b64_msg_sig)
def sign_transaction(self, tx, keypairs, password):
- if tx.error or tx.is_complete():
+ if tx.is_complete():
return
+ if tx.error:
+ raise BaseException(tx.error)
if not self.check_proper_device():
give_error('Wrong device or password')