Skip to content

Commit 5cd22bf

Browse files
author
Barnabas Gavin Cangan
authored
Merge pull request #1 from DexaiRobotics/bgc.port_pr406_from_signal11
Merge PR libusb#406 from signal11/hidapi
2 parents 7e91963 + 660ef69 commit 5cd22bf

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

libusb/hid.c

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -481,9 +481,17 @@ static wchar_t *get_usb_string(libusb_device_handle *dev, uint8_t idx)
481481
static char *make_path(libusb_device *dev, int interface_number)
482482
{
483483
char str[64];
484-
snprintf(str, sizeof(str), "%04x:%04x:%02x",
484+
uint8_t port_numbers[8] = { 0,0,0,0,0,0,0,0 };
485+
int num_ports;
486+
// Note that USB3 port count limit is 7; use 8 here for alignment
487+
488+
num_ports = libusb_get_port_numbers(dev, port_numbers, 8);
489+
snprintf(str, sizeof(str), "%04x:%04x:%04x:%04x:%04x:%02x",
485490
libusb_get_bus_number(dev),
486-
libusb_get_device_address(dev),
491+
*(uint16_t*)(&port_numbers[0]),
492+
*(uint16_t*)(&port_numbers[2]),
493+
*(uint16_t*)(&port_numbers[4]),
494+
*(uint16_t*)(&port_numbers[6]),
487495
interface_number);
488496
str[sizeof(str)-1] = '\0';
489497

0 commit comments

Comments
 (0)