diff --git a/ChangeLog b/ChangeLog index 0f3eaf682..317a367cf 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2013-04-27 Vladimir Serbinenko + + * grub-core/disk/ahci.c (grub_ahci_pciinit): Fix handling of empty + ports. + 2013-04-27 Leon Drugi * grub-core/loader/multiboot_mbi2.c (grub_multiboot_load): Fix cast in diff --git a/grub-core/disk/ahci.c b/grub-core/disk/ahci.c index 29fe2460f..47fd423e4 100644 --- a/grub-core/disk/ahci.c +++ b/grub-core/disk/ahci.c @@ -350,7 +350,7 @@ grub_ahci_pciinit (grub_pci_device_t dev, continue; } - adevs[i] = grub_malloc (sizeof (*adevs[i])); + adevs[i] = grub_zalloc (sizeof (*adevs[i])); if (!adevs[i]) return 1; @@ -619,9 +619,9 @@ grub_ahci_pciinit (grub_pci_device_t dev, for (i = 0; i < nports; i++) if (failed_adevs[i]) { - grub_dma_free (adevs[i]->command_list_chunk); - grub_dma_free (adevs[i]->command_table_chunk); - grub_dma_free (adevs[i]->rfis); + grub_dma_free (failed_adevs[i]->command_list_chunk); + grub_dma_free (failed_adevs[i]->command_table_chunk); + grub_dma_free (failed_adevs[i]->rfis); } for (i = 0; i < nports; i++)