diff --git a/Userland/Libraries/LibJS/Heap/HeapBlock.h b/Userland/Libraries/LibJS/Heap/HeapBlock.h index e21ed79fdf..9472827816 100644 --- a/Userland/Libraries/LibJS/Heap/HeapBlock.h +++ b/Userland/Libraries/LibJS/Heap/HeapBlock.h @@ -60,7 +60,8 @@ public: if (pointer < reinterpret_cast(m_storage)) return nullptr; size_t cell_index = (pointer - reinterpret_cast(m_storage)) / m_cell_size; - if (cell_index >= cell_count()) + auto end = has_lazy_freelist() ? m_next_lazy_freelist_index : cell_count(); + if (cell_index >= end) return nullptr; return cell(cell_index); }