diff --git a/src/system/kernel/arch/x86/irq_routing_table.cpp b/src/system/kernel/arch/x86/irq_routing_table.cpp index 269041592d..f810ed0ae4 100644 --- a/src/system/kernel/arch/x86/irq_routing_table.cpp +++ b/src/system/kernel/arch/x86/irq_routing_table.cpp @@ -236,12 +236,14 @@ choose_link_device_configurations(acpi_module_info* acpi, link->possible_irqs); if (status != B_OK) { panic("failed to read possible irqs of link device"); + delete link; return status; } status = read_current_irq(acpi, link->handle, link->current_irq); if (status != B_OK) { panic("failed to read current irq of link device"); + delete link; return status; }