From 228a32effcb214a0baed56d3d007587a495fa96e Mon Sep 17 00:00:00 2001 From: Tim Schumacher Date: Wed, 6 Oct 2021 01:39:17 +0200 Subject: [PATCH] Kernel: Don't retrieve possibly nonexistent APIC table --- Kernel/Interrupts/InterruptManagement.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Kernel/Interrupts/InterruptManagement.cpp b/Kernel/Interrupts/InterruptManagement.cpp index c378253b2e..dc25448467 100644 --- a/Kernel/Interrupts/InterruptManagement.cpp +++ b/Kernel/Interrupts/InterruptManagement.cpp @@ -114,7 +114,10 @@ UNMAP_AFTER_INIT PhysicalAddress InterruptManagement::search_for_madt() auto rsdp = ACPI::StaticParsing::find_rsdp(); if (!rsdp.has_value()) return {}; - return ACPI::StaticParsing::find_table(rsdp.value(), "APIC").value(); + auto apic = ACPI::StaticParsing::find_table(rsdp.value(), "APIC"); + if (!apic.has_value()) + return {}; + return apic.value(); } UNMAP_AFTER_INIT InterruptManagement::InterruptManagement()