summaryrefslogtreecommitdiff
path: root/libusb/os/windows_winusb.c
diff options
context:
space:
mode:
Diffstat (limited to 'libusb/os/windows_winusb.c')
-rw-r--r--libusb/os/windows_winusb.c17
1 files changed, 5 insertions, 12 deletions
diff --git a/libusb/os/windows_winusb.c b/libusb/os/windows_winusb.c
index df40773..f6ed979 100644
--- a/libusb/os/windows_winusb.c
+++ b/libusb/os/windows_winusb.c
@@ -2794,6 +2794,7 @@ static int winusbx_submit_control_transfer(int sub_api, struct usbi_transfer *it
usbi_dbg(ITRANSFER_CTX(itransfer), "will use interface %d", current_interface);
+ transfer_priv->interface_number = (uint8_t)current_interface;
winusb_handle = handle_priv->interface_handle[current_interface].api_handle;
set_transfer_priv_handle(itransfer, handle_priv->interface_handle[current_interface].dev_handle);
overlapped = get_transfer_priv_overlapped(itransfer);
@@ -2816,8 +2817,6 @@ static int winusbx_submit_control_transfer(int sub_api, struct usbi_transfer *it
}
}
- transfer_priv->interface_number = (uint8_t)current_interface;
-
return LIBUSB_SUCCESS;
}
@@ -2896,6 +2895,7 @@ static int winusbx_submit_iso_transfer(int sub_api, struct usbi_transfer *itrans
usbi_dbg(TRANSFER_CTX(transfer), "matched endpoint %02X with interface %d", transfer->endpoint, current_interface);
+ transfer_priv->interface_number = (uint8_t)current_interface;
winusb_handle = handle_priv->interface_handle[current_interface].api_handle;
set_transfer_priv_handle(itransfer, handle_priv->interface_handle[current_interface].dev_handle);
overlapped = get_transfer_priv_overlapped(itransfer);
@@ -2940,8 +2940,6 @@ static int winusbx_submit_iso_transfer(int sub_api, struct usbi_transfer *itrans
return LIBUSB_ERROR_IO;
}
- transfer_priv->interface_number = (uint8_t)current_interface;
-
return LIBUSB_SUCCESS;
} else if (sub_api == SUB_API_WINUSB) {
WINUSB_PIPE_INFORMATION_EX pipe_info_ex = { 0 };
@@ -3056,8 +3054,6 @@ static int winusbx_submit_iso_transfer(int sub_api, struct usbi_transfer *itrans
transfer_priv->isoch_buffer_handle = buffer_handle;
- transfer_priv->interface_number = (uint8_t)current_interface;
-
return LIBUSB_SUCCESS;
} else {
PRINT_UNSUPPORTED_API(winusbx_submit_iso_transfer);
@@ -3086,6 +3082,7 @@ static int winusbx_submit_bulk_transfer(int sub_api, struct usbi_transfer *itran
usbi_dbg(TRANSFER_CTX(transfer), "matched endpoint %02X with interface %d", transfer->endpoint, current_interface);
+ transfer_priv->interface_number = (uint8_t)current_interface;
winusb_handle = handle_priv->interface_handle[current_interface].api_handle;
set_transfer_priv_handle(itransfer, handle_priv->interface_handle[current_interface].dev_handle);
overlapped = get_transfer_priv_overlapped(itransfer);
@@ -3120,8 +3117,6 @@ static int winusbx_submit_bulk_transfer(int sub_api, struct usbi_transfer *itran
return LIBUSB_ERROR_IO;
}
- transfer_priv->interface_number = (uint8_t)current_interface;
-
return LIBUSB_SUCCESS;
}
@@ -3995,6 +3990,7 @@ static int hid_submit_control_transfer(int sub_api, struct usbi_transfer *itrans
usbi_dbg(ITRANSFER_CTX(itransfer), "will use interface %d", current_interface);
+ transfer_priv->interface_number = (uint8_t)current_interface;
hid_handle = handle_priv->interface_handle[current_interface].api_handle;
set_transfer_priv_handle(itransfer, hid_handle);
overlapped = get_transfer_priv_overlapped(itransfer);
@@ -4056,8 +4052,6 @@ static int hid_submit_control_transfer(int sub_api, struct usbi_transfer *itrans
r = LIBUSB_SUCCESS;
}
- transfer_priv->interface_number = (uint8_t)current_interface;
-
return LIBUSB_SUCCESS;
}
@@ -4090,6 +4084,7 @@ static int hid_submit_bulk_transfer(int sub_api, struct usbi_transfer *itransfer
usbi_dbg(TRANSFER_CTX(transfer), "matched endpoint %02X with interface %d", transfer->endpoint, current_interface);
+ transfer_priv->interface_number = (uint8_t)current_interface;
hid_handle = handle_priv->interface_handle[current_interface].api_handle;
set_transfer_priv_handle(itransfer, hid_handle);
overlapped = get_transfer_priv_overlapped(itransfer);
@@ -4130,8 +4125,6 @@ static int hid_submit_bulk_transfer(int sub_api, struct usbi_transfer *itransfer
return LIBUSB_ERROR_IO;
}
- transfer_priv->interface_number = (uint8_t)current_interface;
-
return LIBUSB_SUCCESS;
}