bug 1328964 restore fix for stack use after scope
bug 1415086 r?jib
Lost in rebase of "part 2 - WorkletThread" across
https://hg.mozilla.org/mozilla-central/rev/90a7bc300af3
Addresses https://reviewboard.mozilla.org/r/199424/#comment296306
MozReview-Commit-ID: ITtCQP3g0ly
--- a/dom/worklet/Worklet.cpp
+++ b/dom/worklet/Worklet.cpp
@@ -385,19 +385,21 @@ ExecutionRunnable::RunOnWorkletThread()
Worklet::CreateGlobalScope(jsapi.cx(), mWorkletType);
MOZ_ASSERT(globalScope);
AutoEntryScript aes(globalScope, "Worklet");
cx = aes.cx();
JS::Rooted<JSObject*> globalObj(cx, globalScope->GetGlobalJSObject());
+ NS_ConvertUTF16toUTF8 url(mHandler->URL());
+
JS::CompileOptions compileOptions(cx);
compileOptions.setIntroductionType("Worklet");
- compileOptions.setFileAndLine(NS_ConvertUTF16toUTF8(mHandler->URL()).get(), 0);
+ compileOptions.setFileAndLine(url.get(), 0);
compileOptions.setVersion(JSVERSION_DEFAULT);
compileOptions.setIsRunOnce(true);
compileOptions.setNoScriptRval(true);
JSAutoCompartment comp(cx, globalObj);
JS::Rooted<JS::Value> unused(cx);
if (!JS::Evaluate(cx, compileOptions, mBuffer, &unused)) {