X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;ds=sidebyside;f=lib%2Fnames-hash.c;h=8c7567604acb8595b05e0e7b42f3a514a458e098;hb=06f9ecf36e529695feea35038e15233dffe37bb7;hp=d0748c7b9e16550b2a5b345f933d4fe0b5e2d079;hpb=752d4d9ab7e567ea972a16f33d2a210ae90b7051;p=pciutils.git diff --git a/lib/names-hash.c b/lib/names-hash.c index d0748c7..8c75676 100644 --- a/lib/names-hash.c +++ b/lib/names-hash.c @@ -3,7 +3,9 @@ * * Copyright (c) 1997--2008 Martin Mares * - * Can be freely distributed and used under the terms of the GNU GPL. + * Can be freely distributed and used under the terms of the GNU GPL v2+. + * + * SPDX-License-Identifier: GPL-2.0-or-later */ #include @@ -103,6 +105,8 @@ char continue; if (n->src == SRC_CACHE && !(flags & PCI_LOOKUP_CACHE)) continue; + if (n->src == SRC_HWDB && (flags & (PCI_LOOKUP_SKIP_LOCAL | PCI_LOOKUP_NO_HWDB))) + continue; if (!best || best->src < n->src) best = n; } @@ -112,12 +116,11 @@ char return NULL; } -static void +void pci_id_hash_free(struct pci_access *a) { pci_mfree(a->id_hash); a->id_hash = NULL; - a->id_cache_status = 0; while (a->current_id_bucket) { struct id_bucket *buck = a->current_id_bucket; @@ -125,10 +128,3 @@ pci_id_hash_free(struct pci_access *a) pci_mfree(buck); } } - -void -pci_free_name_list(struct pci_access *a) -{ - pci_id_cache_flush(a); - pci_id_hash_free(a); -}