From bb172b4356c1ace9aa2d2eb4b805f90ae6678de3 Mon Sep 17 00:00:00 2001 From: Jakub Klama Date: Wed, 22 Nov 2017 20:40:09 +0100 Subject: [PATCH] linux_usbfs: Set urb->buffer_length for isochronous transfers Linux 4.13 expects buffer_length to match sum of iso descriptor lengths. Closes #365 Signed-off-by: Chris Dickens --- libusb/os/linux_usbfs.c | 1 + libusb/version_nano.h | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/libusb/os/linux_usbfs.c b/libusb/os/linux_usbfs.c index 9486d66..5160e86 100644 --- a/libusb/os/linux_usbfs.c +++ b/libusb/os/linux_usbfs.c @@ -2082,6 +2082,7 @@ static int submit_iso_transfer(struct usbi_transfer *itransfer) for (j = 0, k = packet_offset - urb_packet_offset; k < packet_offset; k++, j++) { packet_len = transfer->iso_packet_desc[k].length; + urb->buffer_length += packet_len; urb->iso_frame_desc[j].length = packet_len; } diff --git a/libusb/version_nano.h b/libusb/version_nano.h index 129f818..4c701ea 100644 --- a/libusb/version_nano.h +++ b/libusb/version_nano.h @@ -1 +1 @@ -#define LIBUSB_NANO 11218 +#define LIBUSB_NANO 11219 -- 2.7.4