From 8995b1fc81e4378d2b5b0b6b0d354735403210ed Mon Sep 17 00:00:00 2001 From: Martin Husemann Date: Tue, 15 Mar 2016 18:07:00 +0900 Subject: [PATCH] sanei_usb: fix number of bytes read for 64bit big-endian systems Fixes 315337. --- sanei/sanei_usb.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/sanei/sanei_usb.c b/sanei/sanei_usb.c index 61d5cb8d9..e4b23dc1d 100644 --- a/sanei/sanei_usb.c +++ b/sanei/sanei_usb.c @@ -2336,10 +2336,10 @@ sanei_usb_read_bulk (SANE_Int dn, SANE_Byte * buffer, size_t * size) { if (devices[dn].bulk_in_ep) { - int ret; + int ret, rsize; ret = libusb_bulk_transfer (devices[dn].lu_handle, devices[dn].bulk_in_ep, buffer, - (int) *size, (int *) &read_size, + (int) *size, &rsize, libusb_timeout); if (ret < 0) @@ -2349,6 +2349,10 @@ sanei_usb_read_bulk (SANE_Int dn, SANE_Byte * buffer, size_t * size) read_size = -1; } + else + { + read_size = rsize; + } } else {