Trezor: fixes for latest libtrezor
We were relying on internals of libtrezor that they just changed. However their changes don't work on Mac either. Work around both issues. I think this... Fixes #1637
This commit is contained in:
parent
f8ed7b058d
commit
f4fa53e915
|
@ -227,7 +227,7 @@ class BasePlugin(PrintError):
|
|||
def settings_dialog(self):
|
||||
pass
|
||||
|
||||
Device = namedtuple("Device", "path id_ product_key")
|
||||
Device = namedtuple("Device", "path interface_number id_ product_key")
|
||||
DeviceInfo = namedtuple("DeviceInfo", "device description initialized")
|
||||
|
||||
class DeviceMgr(PrintError):
|
||||
|
@ -423,8 +423,8 @@ class DeviceMgr(PrintError):
|
|||
for d in hid.enumerate(0, 0):
|
||||
product_key = (d['vendor_id'], d['product_id'])
|
||||
if product_key in self.recognised_hardware:
|
||||
devices.append(Device(d['path'], d['serial_number'],
|
||||
product_key))
|
||||
devices.append(Device(d['path'], d['interface_number'],
|
||||
d['serial_number'], product_key))
|
||||
|
||||
# Now find out what was disconnected
|
||||
pairs = [(dev.path, dev.id_) for dev in devices]
|
||||
|
|
|
@ -209,16 +209,18 @@ class TrezorCompatiblePlugin(BasePlugin, ThreadJob):
|
|||
wallet.last_operation = self.prevent_timeout
|
||||
|
||||
def create_client(self, device, handler):
|
||||
path = device.path
|
||||
pair = ((None, path) if self.HidTransport._detect_debuglink(path)
|
||||
else (path, None))
|
||||
if device.interface_number == 1:
|
||||
pair = [None, device.path]
|
||||
else:
|
||||
pair = [device.path, None]
|
||||
|
||||
try:
|
||||
transport = self.HidTransport(pair)
|
||||
except BaseException as e:
|
||||
# We were probably just disconnected; never mind
|
||||
self.print_error("cannot connect at", path, str(e))
|
||||
self.print_error("cannot connect at", device.path, str(e))
|
||||
return None
|
||||
self.print_error("connected to device at", path)
|
||||
self.print_error("connected to device at", device.path)
|
||||
|
||||
client = self.client_class(transport, handler, self)
|
||||
|
||||
|
|
Loading…
Reference in New Issue