diff --git a/src/device_handle.rs b/src/device_handle.rs index eb9c360..d7845f2 100644 --- a/src/device_handle.rs +++ b/src/device_handle.rs @@ -247,7 +247,7 @@ impl<'a> DeviceHandle<'a> { Ok(transferred as usize) }, err => { - if err == LIBUSB_ERROR_INTERRUPTED && transferred > 0 { + if (err == LIBUSB_ERROR_INTERRUPTED || err == LIBUSB_ERROR_TIMEOUT) && transferred > 0 { Ok(transferred as usize) } else { @@ -293,7 +293,7 @@ impl<'a> DeviceHandle<'a> { Ok(transferred as usize) }, err => { - if err == LIBUSB_ERROR_INTERRUPTED && transferred > 0 { + if (err == LIBUSB_ERROR_INTERRUPTED || err == LIBUSB_ERROR_TIMEOUT) && transferred > 0 { Ok(transferred as usize) } else {