diff options
Diffstat (limited to 'libusb/os/windows_usb.c')
-rw-r--r-- | libusb/os/windows_usb.c | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/libusb/os/windows_usb.c b/libusb/os/windows_usb.c index 5f5b3b7..2e6c6ac 100644 --- a/libusb/os/windows_usb.c +++ b/libusb/os/windows_usb.c @@ -2952,16 +2952,12 @@ static int composite_submit_control_transfer(struct usbi_transfer *itransfer) struct libusb_transfer *transfer = __USBI_TRANSFER_TO_LIBUSB_TRANSFER(itransfer); struct libusb_context *ctx = DEVICE_CTX(transfer->dev_handle->dev); struct windows_device_priv *priv = __device_priv(transfer->dev_handle->dev); - int i, pass; - - // Interface shouldn't matter for control, but it does in practice, with Windows' - // restrictions with regards to accessing HID keyboards and mice. Try a 2 pass approach - for (pass = 0; pass < 2; pass++) { - for (i=0; i<USB_MAXINTERFACES; i++) { - if (priv->usb_interface[i].path != NULL) { - usbi_dbg("using interface %d", i); - return priv->usb_interface[i].apib->submit_control_transfer(itransfer); - } + int i; + + for (i=0; i<USB_MAXINTERFACES; i++) { + if (priv->usb_interface[i].path != NULL) { + usbi_dbg("using interface %d", i); + return priv->usb_interface[i].apib->submit_control_transfer(itransfer); } } |