diff --git a/Userland/DevTools/UserspaceEmulator/Emulator.cpp b/Userland/DevTools/UserspaceEmulator/Emulator.cpp index 76ba17fabe..85b0d84234 100644 --- a/Userland/DevTools/UserspaceEmulator/Emulator.cpp +++ b/Userland/DevTools/UserspaceEmulator/Emulator.cpp @@ -378,13 +378,10 @@ Vector Emulator::raw_backtrace() MmapRegion const* Emulator::find_text_region(FlatPtr address) { MmapRegion const* matching_region = nullptr; - mmu().for_each_region([&](auto& region) { - if (!is(region)) + mmu().for_each_region_of_type([&](auto& region) { + if (!(region.is_executable() && address >= region.base() && address < region.base() + region.size())) return IterationDecision::Continue; - auto const& mmap_region = static_cast(region); - if (!(mmap_region.is_executable() && address >= mmap_region.base() && address < mmap_region.base() + mmap_region.size())) - return IterationDecision::Continue; - matching_region = &mmap_region; + matching_region = ®ion; return IterationDecision::Break; }); return matching_region;