| Index: third_party/WebKit/Source/core/workers/Worklet.cpp
|
| diff --git a/third_party/WebKit/Source/core/workers/Worklet.cpp b/third_party/WebKit/Source/core/workers/Worklet.cpp
|
| index e3b01ca0e6149b82b2c5c71bd16a0d207adb7027..45578adc1b09e7933366db9c221b5406d52f6c0d 100644
|
| --- a/third_party/WebKit/Source/core/workers/Worklet.cpp
|
| +++ b/third_party/WebKit/Source/core/workers/Worklet.cpp
|
| @@ -27,6 +27,10 @@ Worklet::Worklet(LocalFrame* frame)
|
|
|
| ScriptPromise Worklet::import(ScriptState* scriptState, const String& url)
|
| {
|
| + if (!isInitialized()) {
|
| + initialize();
|
| + }
|
| +
|
| KURL scriptURL = getExecutionContext()->completeURL(url);
|
| if (!scriptURL.isValid()) {
|
| return ScriptPromise::rejectWithDOMException(scriptState, DOMException::create(SyntaxError, "'" + url + "' is not a valid URL."));
|
| @@ -56,7 +60,10 @@ void Worklet::notifyFinished(WorkletScriptLoader* scriptLoader)
|
|
|
| void Worklet::stop()
|
| {
|
| - workletGlobalScopeProxy()->terminateWorkletGlobalScope();
|
| + if (isInitialized()) {
|
| + workletGlobalScopeProxy()->terminateWorkletGlobalScope();
|
| + }
|
| +
|
| for (const auto& scriptLoader : m_scriptLoaders) {
|
| scriptLoader->cancel();
|
| }
|
|
|