mirror of
https://github.com/fergalmoran/ladybird.git
synced 2026-03-06 13:35:03 +00:00
LibJS: Fix string roots not being collected
Previously objects were the only heap allocated value. Now there are also strings. This replaces a usage of is_object with is_cell. Without this change strings could be garbage collected while still being used in an active scope.
This commit is contained in:
committed by
Andreas Kling
parent
8cf962a102
commit
17705d23fb
@@ -122,8 +122,8 @@ void Interpreter::collect_roots(Badge<Heap>, HashTable<Cell*>& roots)
|
||||
|
||||
for (auto& scope : m_scope_stack) {
|
||||
for (auto& it : scope.variables) {
|
||||
if (it.value.is_object())
|
||||
roots.set(it.value.as_object());
|
||||
if (it.value.is_cell())
|
||||
roots.set(it.value.as_cell());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user