diff options
author | Daniel Drake <dsd@gentoo.org> | 2008-05-08 23:09:21 +0100 |
---|---|---|
committer | Daniel Drake <dsd@gentoo.org> | 2008-05-08 23:09:21 +0100 |
commit | 45413101b78298e9332b22a34bc6bc159000ad8a (patch) | |
tree | a6554b89188628df2e8bc78a86266f73c2dea396 | |
parent | 10d4e427cc171dfd6ad7f43a33ce3cfebcd7aa04 (diff) | |
download | libusb-45413101b78298e9332b22a34bc6bc159000ad8a.tar.gz |
Linux: fix clear_halt implementation
The ioctl expects an integer.
Bug found with the assistance of Soumen Mondal
-rw-r--r-- | libusb/os/linux_usbfs.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libusb/os/linux_usbfs.c b/libusb/os/linux_usbfs.c index 73529dc..820100f 100644 --- a/libusb/os/linux_usbfs.c +++ b/libusb/os/linux_usbfs.c @@ -597,7 +597,8 @@ static int op_clear_halt(struct libusb_device_handle *handle, unsigned char endpoint) { int fd = __device_handle_priv(handle)->fd; - int r = ioctl(fd, IOCTL_USBFS_CLEAR_HALT, &endpoint); + unsigned int _endpoint = endpoint; + int r = ioctl(fd, IOCTL_USBFS_CLEAR_HALT, &_endpoint); if (r) { if (errno == ENOENT) return LIBUSB_ERROR_NOT_FOUND; |