Check all interfaces. Print a more definite message when a scanner was found

to avoid confusion.
merge-requests/1/head
Henning Geinitz 2003-02-19 19:40:44 +00:00
rodzic 5d4e2220a0
commit 748037c18b
2 zmienionych plików z 16 dodań i 10 usunięć

Wyświetl plik

@ -6,6 +6,8 @@
scanners. Removed Mustek BearPaw 1200F.
* sanei/sanei_usb.c: Check all acceptable interfaces instead of using
the first one.
* tools/sane-find-scanner.c: Check all interfaces. Print a more
definite message when a scanner was found to avoid confusion.
2003-02-18 Stéphane Voltz <svoltz@wanadoo.fr>

Wyświetl plik

@ -429,6 +429,7 @@ check_libusb_device (struct usb_device *dev)
int is_scanner = 0;
char *vendor = get_libusb_vendor (dev);
char *product = get_libusb_product (dev);
int interface_nr;
if (!dev->config)
{
@ -579,19 +580,23 @@ check_libusb_device (struct usb_device *dev)
if (dev->descriptor.idProduct == 0) /* hub */
--is_scanner;
switch (dev->descriptor.bDeviceClass)
for (interface_nr = 0; interface_nr < dev->config[0].bNumInterfaces && is_scanner <= 0; interface_nr++)
{
case USB_CLASS_VENDOR_SPEC:
++is_scanner;
break;
case USB_CLASS_PER_INTERFACE:
switch (dev->config[0].interface->altsetting[0].bInterfaceClass)
switch (dev->descriptor.bDeviceClass)
{
case USB_CLASS_VENDOR_SPEC:
case USB_CLASS_PER_INTERFACE:
case 16: /* data? */
++is_scanner;
break;
case USB_CLASS_PER_INTERFACE:
switch (dev->config[0].interface[interface_nr].altsetting[0].bInterfaceClass)
{
case USB_CLASS_VENDOR_SPEC:
case USB_CLASS_PER_INTERFACE:
case 16: /* data? */
++is_scanner;
break;
}
break;
}
}
@ -1072,8 +1077,7 @@ main (int argc, char **argv)
{
if (verbose > 0)
printf
(" # A USB device was detected. This program can't be sure "
"if it's really\n # a scanner. If it is your scanner, it "
(" # Your USB scanner was (probably) detected. It "
"may or may not be supported by\n # SANE. Try scanimage "
"-L and read the backend's manpage.\n");
}