1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 14:18:12 +00:00

LibJS: Only consider VM-accessible execution contexts as strong roots

Partially reverts 3dc5f467a8 to fix
GC memory leak that happens because we treated all execution contexts
as strong roots.
This commit is contained in:
Aliaksandr Kalenik 2023-12-13 10:24:30 +01:00 committed by Andreas Kling
parent cbb660c756
commit b108d51c5b
9 changed files with 32 additions and 18 deletions

View file

@ -192,6 +192,8 @@ void AsyncFunctionDriverWrapper::visit_edges(Cell::Visitor& visitor)
visitor.visit(m_top_level_promise);
if (m_current_promise)
visitor.visit(m_current_promise);
if (m_suspended_execution_context)
m_suspended_execution_context->visit_edges(visitor);
}
}