From ae833de28e16a9ec0144befa36affa2f4239a7c1 Mon Sep 17 00:00:00 2001 From: Martin Mares Date: Sun, 26 Dec 2021 21:52:37 +0100 Subject: [PATCH] HWDB: Handle NULL returned by udev_list_entry_get_* Based on a patch by . --- lib/names-hwdb.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/lib/names-hwdb.c b/lib/names-hwdb.c index 07b3499..171723b 100644 --- a/lib/names-hwdb.c +++ b/lib/names-hwdb.c @@ -71,8 +71,15 @@ pci_id_hwdb_lookup(struct pci_access *a, int cat, int id1, int id2, int id3, int struct udev_list_entry *entry; udev_list_entry_foreach(entry, udev_hwdb_get_properties_list_entry(a->id_udev_hwdb, modalias, 0)) - if (strcmp(udev_list_entry_get_name(entry), key) == 0) - return pci_strdup(a, udev_list_entry_get_value(entry)); + { + const char *entry_name = udev_list_entry_get_name(entry); + if (entry_name && !strcmp(entry_name, key)) + { + const char *entry_value = udev_list_entry_get_value(entry); + if (entry_value) + return pci_strdup(a, entry_value); + } + } } return NULL; -- 2.39.2