summaryrefslogtreecommitdiff
path: root/Libraries/LibJS/Interpreter.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Libraries/LibJS/Interpreter.cpp')
-rw-r--r--Libraries/LibJS/Interpreter.cpp3
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) {