diff options
-rw-r--r-- | NEWS | 1 | ||||
-rw-r--r-- | pci.c | 2 |
2 files changed, 2 insertions, 1 deletions
@@ -1,3 +1,4 @@ +- do not crash if there're more than 100 PCI devices - further use libpci in order to check for PCIe capability Version 0.11.0 - 1 October 2009, Thierry Vignaud @@ -51,7 +51,7 @@ extern struct pciusb_entries pci_probe(void) { r.nb = 0; r.entries = malloc(sizeof(struct pciusb_entry) * MAX_DEVICES); - for (dev = pacc->devices; dev; dev = dev->next, r.nb++) { + for (dev = pacc->devices; dev && r.nb < MAX_DEVICES; dev = dev->next, r.nb++) { struct pciusb_entry *e = &r.entries[r.nb]; memset(buf, 0, CONFIG_SPACE_SIZE); // make sure not to retrieve values from previous devices |