diff --git a/dom/script/ModuleScript.cpp b/dom/script/ModuleScript.cpp index 8004ede3c6..425da8207a 100644 --- a/dom/script/ModuleScript.cpp +++ b/dom/script/ModuleScript.cpp @@ -132,6 +132,7 @@ ModuleScript::UnlinkModuleRecord() this); JS::SetModulePrivate(mModuleRecord, JS::UndefinedValue()); mModuleRecord = nullptr; + Release(); } } @@ -156,6 +157,7 @@ ModuleScript::SetModuleRecord(JS::Handle aModuleRecord) MOZ_ASSERT(JS::GetModulePrivate(mModuleRecord).isUndefined()); JS::SetModulePrivate(mModuleRecord, JS::PrivateValue(this)); HoldJSObjects(this); + AddRef(); } void @@ -168,7 +170,6 @@ ModuleScript::SetParseError(const JS::Value& aError) UnlinkModuleRecord(); mParseError = aError; HoldJSObjects(this); - AddRef(); } void