diff options
-rw-r--r-- | src/libirecovery.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/libirecovery.c b/src/libirecovery.c index 7a5046a..57ac850 100644 --- a/src/libirecovery.c +++ b/src/libirecovery.c @@ -908,8 +908,10 @@ IRECV_API irecv_error_t irecv_usb_set_interface(irecv_client_t client, int usb_i return IRECV_E_USB_INTERFACE; } - if (libusb_set_interface_alt_setting(client->handle, usb_interface, usb_alt_interface) < 0) { - return IRECV_E_USB_INTERFACE; + if (usb_interface == 1) { + if (libusb_set_interface_alt_setting(client->handle, usb_interface, usb_alt_interface) < 0) { + return IRECV_E_USB_INTERFACE; + } } #else if (irecv_usb_control_transfer(client, 0, 0x0B, usb_alt_interface, usb_interface, NULL, 0, USB_TIMEOUT) < 0) { |