diff -ur pciutils-2.1.11/lib/names.c pciutils-2.1.11.leak/lib/names.c --- pciutils-2.1.11/lib/names.c 2002-03-30 18:39:25 +0300 +++ pciutils-2.1.11.leak/lib/names.c 2004-12-30 10:44:52 +0300 @@ -218,6 +218,18 @@ void pci_free_name_list(struct pci_access *a) { + struct nl_entry *h; + int i; + if (a->nl_hash) + for(i = 0; i < HASH_SIZE; i++) + { + if (a->nl_hash[i] != NULL) + while(a->nl_hash[i]) { + h = a->nl_hash[i]->next; + pci_mfree(a->nl_hash[i]); + a->nl_hash[i] = h; + } + } pci_mfree(a->nl_list); a->nl_list = NULL; pci_mfree(a->nl_hash);