diff options
Diffstat (limited to 'Libraries/LibJS/Interpreter.cpp')
-rw-r--r-- | Libraries/LibJS/Interpreter.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/Libraries/LibJS/Interpreter.cpp b/Libraries/LibJS/Interpreter.cpp index f08839d5d2..903f7fbc9f 100644 --- a/Libraries/LibJS/Interpreter.cpp +++ b/Libraries/LibJS/Interpreter.cpp @@ -30,6 +30,7 @@ #include <LibJS/Interpreter.h> #include <LibJS/NativeFunction.h> #include <LibJS/Object.h> +#include <LibJS/StringPrototype.h> #include <LibJS/Value.h> namespace JS { @@ -38,6 +39,7 @@ Interpreter::Interpreter() : m_heap(*this) { m_global_object = heap().allocate<GlobalObject>(); + m_string_prototype = heap().allocate<StringPrototype>(); } Interpreter::~Interpreter() @@ -137,6 +139,7 @@ Value Interpreter::get_variable(const String& name) void Interpreter::collect_roots(Badge<Heap>, HashTable<Cell*>& roots) { roots.set(m_global_object); + roots.set(m_string_prototype); for (auto& scope : m_scope_stack) { for (auto& it : scope.variables) { |