Andrei Tchijov wrote:
> Not a major thing .... but. All examples for libfprint use function  
> "discover_device" which looks strange:
> 
> struct fp_dscv_dev *discover_device(struct fp_dscv_dev  
> **discovered_devs)
> {
>       struct fp_dscv_dev *ddev = NULL;
>       int i;
> 
>       for (i = 0; ddev = discovered_devs[i]; i++) {
>               struct fp_driver *drv = fp_dscv_dev_get_driver(ddev);
>               printf("Found device claimed by %s driver\n",
>                       fp_driver_get_full_name(drv));
>               return ddev;
>       }
> 
>       return ddev;
> }
> 
> Unless I am greatly mistaken, "for" loop will run once (if  
> discovered_devs is not empty) regardless of anything.

I wonder what I was thinking there. It's just supposed to select the 
first device on the bus. No loop needed, obviously.

> struct fp_dscv_dev *discover_device(struct fp_dscv_dev  
> **discovered_devs)
> {
>       struct fp_dscv_dev *ddev = NULL;
>       int i;
> 
>       for (i = 0; ddev = discovered_devs[i]; i++) {
>               struct fp_driver *drv = fp_dscv_dev_get_driver(ddev);
>               if( drv ) {

Fair guess, but for a valid device, driver will never be NULL.

I'll fix this for the next release.

Thanks,
Daniel

_______________________________________________
fprint mailing list
[email protected]
http://lists.reactivated.net/mailman/listinfo/fprint

Reply via email to