From 66fc93eeff14d273f06ea9ba9c7ee590e94d56cc Mon Sep 17 00:00:00 2001 From: Benjamin Berg Date: Wed, 20 Jan 2021 18:02:31 +0100 Subject: [PATCH] udev-hwdb: Prevent devices from being listed twice The change to print a warning (for testing purposes) from commit 944e0d03837 (udev-rules: Print warning if an ID is supported) was incorrect because it prevented duplicated to be suppressed if a device is listed by two independent drivers. --- libfprint/fprint-list-udev-hwdb.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/libfprint/fprint-list-udev-hwdb.c b/libfprint/fprint-list-udev-hwdb.c index 1553db4..b687085 100644 --- a/libfprint/fprint-list-udev-hwdb.c +++ b/libfprint/fprint-list-udev-hwdb.c @@ -136,10 +136,11 @@ print_driver (const FpDeviceClass *cls) key = g_strdup_printf ("%04x:%04x", entry->vid, entry->pid); - if (cls == &whitelist && g_hash_table_lookup (printed, key) != NULL) + if (g_hash_table_lookup (printed, key) != NULL) { - g_warning ("%s implemented by driver %s", - key, (const char *) g_hash_table_lookup (printed, key)); + if (cls == &whitelist) + g_warning ("%s implemented by driver %s", + key, (const char *) g_hash_table_lookup (printed, key)); g_free (key); continue; }