Browse Source

fix: ledger clear_dialog() threading issues

3.0.x
SomberNight 7 years ago
parent
commit
c9bef38dff
  1. 8
      plugins/ledger/ledger.py

8
plugins/ledger/ledger.py

@ -238,7 +238,7 @@ class Ledger_KeyStore(Hardware_KeyStore):
except Exception as e: except Exception as e:
self.give_error(e, True) self.give_error(e, True)
finally: finally:
self.handler.clear_dialog() self.handler.finished()
self.signing = False self.signing = False
# Parse the ASN.1 signature # Parse the ASN.1 signature
rLength = signature[3] rLength = signature[3]
@ -376,7 +376,7 @@ class Ledger_KeyStore(Hardware_KeyStore):
transactionOutput = outputData['outputData'] transactionOutput = outputData['outputData']
if outputData['confirmationNeeded']: if outputData['confirmationNeeded']:
outputData['address'] = output outputData['address'] = output
self.handler.clear_dialog() self.handler.finished()
pin = self.handler.get_auth( outputData ) # does the authenticate dialog and returns pin pin = self.handler.get_auth( outputData ) # does the authenticate dialog and returns pin
if not pin: if not pin:
raise UserWarning() raise UserWarning()
@ -400,7 +400,7 @@ class Ledger_KeyStore(Hardware_KeyStore):
transactionOutput = outputData['outputData'] transactionOutput = outputData['outputData']
if outputData['confirmationNeeded']: if outputData['confirmationNeeded']:
outputData['address'] = output outputData['address'] = output
self.handler.clear_dialog() self.handler.finished()
pin = self.handler.get_auth( outputData ) # does the authenticate dialog and returns pin pin = self.handler.get_auth( outputData ) # does the authenticate dialog and returns pin
if not pin: if not pin:
raise UserWarning() raise UserWarning()
@ -421,7 +421,7 @@ class Ledger_KeyStore(Hardware_KeyStore):
traceback.print_exc(file=sys.stdout) traceback.print_exc(file=sys.stdout)
self.give_error(e, True) self.give_error(e, True)
finally: finally:
self.handler.clear_dialog() self.handler.finished()
for i, txin in enumerate(tx.inputs()): for i, txin in enumerate(tx.inputs()):
signingPos = inputs[i][4] signingPos = inputs[i][4]

Loading…
Cancel
Save