patch issue with del on windows
This commit is contained in:
@@ -37,6 +37,7 @@ from fido2.utils import Timeout
|
|||||||
|
|
||||||
import usb.core
|
import usb.core
|
||||||
import usb.util
|
import usb.util
|
||||||
|
import usb._objfinalizer
|
||||||
|
|
||||||
from intelhex import IntelHex
|
from intelhex import IntelHex
|
||||||
import serial
|
import serial
|
||||||
@@ -341,6 +342,15 @@ class DFU:
|
|||||||
self.state = s[4]
|
self.state = s[4]
|
||||||
self.istring = s[5]
|
self.istring = s[5]
|
||||||
|
|
||||||
|
# hot patch for windows libusb backend
|
||||||
|
olddel = usb._objfinalizer._AutoFinalizedObjectBase.__del__
|
||||||
|
def newdel(self):
|
||||||
|
try:
|
||||||
|
olddel(self)
|
||||||
|
except OSError:
|
||||||
|
pass
|
||||||
|
usb._objfinalizer._AutoFinalizedObjectBase.__del__ = newdel
|
||||||
|
|
||||||
class DFUDevice:
|
class DFUDevice:
|
||||||
def __init__(self,):
|
def __init__(self,):
|
||||||
pass
|
pass
|
||||||
@@ -377,7 +387,6 @@ class DFUDevice:
|
|||||||
else:
|
else:
|
||||||
self.dev = usb.core.find(idVendor=0x0483, idProduct=0xDF11,)
|
self.dev = usb.core.find(idVendor=0x0483, idProduct=0xDF11,)
|
||||||
|
|
||||||
#print (self.dev)
|
|
||||||
|
|
||||||
if self.dev is None:
|
if self.dev is None:
|
||||||
raise RuntimeError('No ST DFU devices found.')
|
raise RuntimeError('No ST DFU devices found.')
|
||||||
|
Reference in New Issue
Block a user