mirror of
https://github.com/mariusgreuel/avrdude.git
synced 2025-09-27 14:35:27 +00:00
Submitted by Stephen Roe:
patch #7710: usb_libusb: Check VID/PID before opening device * usb_libusb.c (usbdev_open): Swap the sequence of verifying the VID:PID, and opening the device. git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@1228 81a1dc3b-b13d-400b-aceb-764788c761c2
This commit is contained in:
18
usb_libusb.c
18
usb_libusb.c
@@ -115,11 +115,11 @@ static int usbdev_open(char * port, long baud, union filedescriptor *fd)
|
||||
{
|
||||
for (dev = bus->devices; dev; dev = dev->next)
|
||||
{
|
||||
udev = usb_open(dev);
|
||||
if (udev)
|
||||
if (dev->descriptor.idVendor == USB_VENDOR_ATMEL &&
|
||||
dev->descriptor.idProduct == (unsigned short)baud)
|
||||
{
|
||||
if (dev->descriptor.idVendor == USB_VENDOR_ATMEL &&
|
||||
dev->descriptor.idProduct == (unsigned short)baud)
|
||||
udev = usb_open(dev);
|
||||
if (udev)
|
||||
{
|
||||
/* yeah, we found something */
|
||||
if (usb_get_string_simple(udev,
|
||||
@@ -246,10 +246,14 @@ static int usbdev_open(char * port, long baud, union filedescriptor *fd)
|
||||
fd->usb.max_xfer = dev->config[0].interface[0].altsetting[0].endpoint[i].wMaxPacketSize;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
return 0;
|
||||
trynext:
|
||||
usb_close(udev);
|
||||
}
|
||||
trynext:
|
||||
usb_close(udev);
|
||||
else
|
||||
fprintf(stderr,
|
||||
"%s: usbdev_open(): cannot open device: %s\n",
|
||||
progname, usb_strerror());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user