]> sigrok.org Git - libsigrok.git/commitdiff
sr_usb_find(): Increase the 'bus' limit to 255.
authorUwe Hermann <redacted>
Sat, 21 Nov 2015 19:27:25 +0000 (20:27 +0100)
committerUwe Hermann <redacted>
Sat, 21 Nov 2015 19:27:25 +0000 (20:27 +0100)
On some systems it can happen that the USB 'bus' number is a lot larger
than 64, but sr_usb_find() currently errors out if it is > 64.

Example:
Bus 250 Device 006: ID 1ab1:04ce 1ab1 DS1000Z Series[...]

Increase that limit so that the code will work everywhere. This bus number
is queried via libusb_get_bus_number() which returns an uint8_t, so we're
limiting to 255 here.

Thanks to 'ssi' on IRC for reporting the issue.

src/usb.c

index ba56e864c12ccf64260e5d824f01655b24db78aa..02510caed4edca7293410788156521d35be81e61 100644 (file)
--- a/src/usb.c
+++ b/src/usb.c
@@ -359,7 +359,7 @@ SR_PRIV GSList *sr_usb_find(libusb_context *usb_ctx, const char *conn)
                return NULL;
        }
 
-       if (bus > 64) {
+       if (bus > 255) {
                sr_err("Invalid bus specified: %d.", bus);
                return NULL;
        }