fix: ledger clear_dialog() threading issues

This commit is contained in:
SomberNight 2017-11-18 04:09:15 +01:00
parent 219a5b02a6
commit c9bef38dff
1 changed files with 5 additions and 5 deletions

View File

@ -238,7 +238,7 @@ class Ledger_KeyStore(Hardware_KeyStore):
except Exception as e:
self.give_error(e, True)
finally:
self.handler.clear_dialog()
self.handler.finished()
self.signing = False
# Parse the ASN.1 signature
rLength = signature[3]
@ -376,13 +376,13 @@ class Ledger_KeyStore(Hardware_KeyStore):
transactionOutput = outputData['outputData']
if outputData['confirmationNeeded']:
outputData['address'] = output
self.handler.clear_dialog()
self.handler.finished()
pin = self.handler.get_auth( outputData ) # does the authenticate dialog and returns pin
if not pin:
raise UserWarning()
if pin != 'paired':
self.handler.show_message(_("Confirmed. Signing Transaction..."))
while inputIndex < len(inputs):
while inputIndex < len(inputs):
singleInput = [ chipInputs[inputIndex] ]
self.get_client().startUntrustedTransaction(False, 0,
singleInput, redeemScripts[inputIndex])
@ -400,7 +400,7 @@ class Ledger_KeyStore(Hardware_KeyStore):
transactionOutput = outputData['outputData']
if outputData['confirmationNeeded']:
outputData['address'] = output
self.handler.clear_dialog()
self.handler.finished()
pin = self.handler.get_auth( outputData ) # does the authenticate dialog and returns pin
if not pin:
raise UserWarning()
@ -421,7 +421,7 @@ class Ledger_KeyStore(Hardware_KeyStore):
traceback.print_exc(file=sys.stdout)
self.give_error(e, True)
finally:
self.handler.clear_dialog()
self.handler.finished()
for i, txin in enumerate(tx.inputs()):
signingPos = inputs[i][4]