Bug 1724236 - Inline ExecScript and move ExecScriptAndCoerceString to where it is used r=arai

ExecScript returning a value was only used in one place, and that call always
coerced the return value to a string.

Differential Revision: https://phabricator.services.mozilla.com/D218451
This commit is contained in:
Bryan Thrall
2024-10-30 13:41:44 +00:00
parent e859d8b8d0
commit 8e00518582
5 changed files with 69 additions and 86 deletions

View File

@@ -2637,8 +2637,7 @@ class MOZ_RAII AutoSetProcessingScriptTag {
~AutoSetProcessingScriptTag() { mContext->SetProcessingScriptTag(mOldTag); }
};
static void ExecuteCompiledScript(JSContext* aCx, JSExecutionContext& aExec,
ClassicScript* aLoaderScript,
static void ExecuteCompiledScript(JSContext* aCx, ClassicScript* aLoaderScript,
JS::Handle<JSScript*> aScript,
ErrorResult& aRv) {
if (!aScript) {
@@ -2651,7 +2650,9 @@ static void ExecuteCompiledScript(JSContext* aCx, JSExecutionContext& aExec,
aLoaderScript->AssociateWithScript(aScript);
}
ExecScript(aCx, aScript, aRv);
if (!JS_ExecuteScript(aCx, aScript)) {
aRv.NoteJSContextException(aCx);
}
}
nsresult ScriptLoader::EvaluateScriptElement(ScriptLoadRequest* aRequest) {
@@ -3086,7 +3087,7 @@ nsresult ScriptLoader::EvaluateScript(nsIGlobalObject* aGlobalObject,
profilerLabelString);
MOZ_ASSERT(options.noScriptRval);
ExecuteCompiledScript(cx, exec, classicScript, script, erv);
ExecuteCompiledScript(cx, classicScript, script, erv);
}
}
rv = EvaluationExceptionToNSResult(erv);