1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 14:37:46 +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

@ -48,6 +48,7 @@ void AsyncGenerator::visit_edges(Cell::Visitor& visitor)
if (m_frame)
m_frame->visit_edges(visitor);
visitor.visit(m_current_promise);
m_async_generator_context->visit_edges(visitor);
}
// 27.6.3.4 AsyncGeneratorEnqueue ( generator, completion, promiseCapability ), https://tc39.es/ecma262/#sec-asyncgeneratorenqueue