Browse Source

fixes for hardware wallets

283
ThomasV 8 years ago
parent
commit
6b0e65fc0a
  1. 5
      lib/plugins.py
  2. 7
      plugins/hw_wallet/plugin.py

5
lib/plugins.py

@ -356,7 +356,6 @@ class DeviceMgr(ThreadJob, PrintError):
_id = self.xpub_ids.pop(xpub)
client = self.client_lookup(_id)
self.clients.pop(client, None)
#wallet.unpaired()
if client:
client.close()
@ -369,7 +368,6 @@ class DeviceMgr(ThreadJob, PrintError):
def pair_xpub(self, xpub, id_):
with self.lock:
self.xpub_ids[xpub] = id_
#wallet.paired()
def client_lookup(self, id_):
with self.lock:
@ -407,7 +405,8 @@ class DeviceMgr(ThreadJob, PrintError):
def force_pair_xpub(self, plugin, handler, xpub, derivation, devices):
# The wallet has not been previously paired, so let the user
# choose an unpaired device and compare its first address.
info = self.select_device(handler, plugin, devices)
with self.lock:
info = self.select_device(handler, plugin, devices)
client = self.client_lookup(info.device.id_)
if client and client.is_pairable():
# See comment above for same code

7
plugins/hw_wallet/plugin.py

@ -48,7 +48,6 @@ class HW_PluginBase(BasePlugin):
@hook
def close_wallet(self, wallet):
keystore = wallet.get_keystore()
if isinstance(keystore, self.keystore_class):
self.device_manager().unpair_xpub(keystore.xpub)
for keystore in wallet.get_keystores():
if isinstance(keystore, self.keystore_class):
self.device_manager().unpair_xpub(keystore.xpub)

Loading…
Cancel
Save