]> mj.ucw.cz Git - pciutils.git/blobdiff - lib/names-parse.c
lspci: Indent PCIe Capability DevCap2 & DevCtl2 correctly
[pciutils.git] / lib / names-parse.c
index 71b622f84cb841d5a85274a9ecf17dbbea6e18a5..f3b7da9ee1897c4bfc950c50d2de9b0777038c8b 100644 (file)
@@ -30,7 +30,7 @@ static pci_file pci_open(struct pci_access *a)
   if (result)
     return result;
   len = strlen(a->id_file_name);
-  if (len >= 3 && memcmp(a->id_file_name + len - 3, ".gz", 3) != 0)
+  if (len < 3 || memcmp(a->id_file_name + len - 3, ".gz", 3) != 0)
     return result;
   new_name = malloc(len - 2);
   memcpy(new_name, a->id_file_name, len - 3);
@@ -233,7 +233,17 @@ pci_load_name_list(struct pci_access *a)
   return 1;
 }
 
-void pci_set_name_list_path(struct pci_access *a, char *name, int to_be_freed)
+void
+pci_free_name_list(struct pci_access *a)
+{
+  pci_id_cache_flush(a);
+  pci_id_hash_free(a);
+  pci_id_hwdb_free(a);
+  a->id_load_failed = 0;
+}
+
+void
+pci_set_name_list_path(struct pci_access *a, char *name, int to_be_freed)
 {
   if (a->free_id_name)
     free(a->id_file_name);