From f357998e81fdf609687d9925ce0f6ed7c7feba6a Mon Sep 17 00:00:00 2001 From: Idan Horowitz Date: Fri, 5 Apr 2024 20:41:08 +0300 Subject: [PATCH] LibWeb: Add missing visit_edges implementation to ModuleNamespaceObject --- Userland/Libraries/LibJS/Runtime/ModuleNamespaceObject.cpp | 6 ++++++ Userland/Libraries/LibJS/Runtime/ModuleNamespaceObject.h | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/Userland/Libraries/LibJS/Runtime/ModuleNamespaceObject.cpp b/Userland/Libraries/LibJS/Runtime/ModuleNamespaceObject.cpp index b301d398d1..d59da1dcc1 100644 --- a/Userland/Libraries/LibJS/Runtime/ModuleNamespaceObject.cpp +++ b/Userland/Libraries/LibJS/Runtime/ModuleNamespaceObject.cpp @@ -228,4 +228,10 @@ ThrowCompletionOr> ModuleNamespaceObject::internal_own_prope return exports; } +void ModuleNamespaceObject::visit_edges(JS::Cell::Visitor& visitor) +{ + Base::visit_edges(visitor); + visitor.visit(m_module); +} + } diff --git a/Userland/Libraries/LibJS/Runtime/ModuleNamespaceObject.h b/Userland/Libraries/LibJS/Runtime/ModuleNamespaceObject.h index 397d24edfb..3a43927270 100644 --- a/Userland/Libraries/LibJS/Runtime/ModuleNamespaceObject.h +++ b/Userland/Libraries/LibJS/Runtime/ModuleNamespaceObject.h @@ -35,7 +35,8 @@ public: private: ModuleNamespaceObject(Realm&, Module* module, Vector exports); - // FIXME: UHHH how do we want to store this to avoid cycles but be safe?? + virtual void visit_edges(Visitor&) override; + GCPtr m_module; // [[Module]] Vector m_exports; // [[Exports]] };