| Index: third_party/WebKit/Source/bindings/core/v8/ScriptStreamer.h
|
| diff --git a/third_party/WebKit/Source/bindings/core/v8/ScriptStreamer.h b/third_party/WebKit/Source/bindings/core/v8/ScriptStreamer.h
|
| index e3eb425878a429be07503850888b10cfe5355b4c..c002175480a9180c27b37d325d81a35dfaa3c6cf 100644
|
| --- a/third_party/WebKit/Source/bindings/core/v8/ScriptStreamer.h
|
| +++ b/third_party/WebKit/Source/bindings/core/v8/ScriptStreamer.h
|
| @@ -21,6 +21,7 @@ class ScriptResourceClient;
|
| class ScriptState;
|
| class Settings;
|
| class SourceStream;
|
| +class WebTaskRunner;
|
|
|
| // ScriptStreamer streams incomplete script data to V8 so that it can be parsed
|
| // while it's loaded. PendingScript holds a reference to ScriptStreamer. At the
|
| @@ -32,9 +33,9 @@ class SourceStream;
|
| class CORE_EXPORT ScriptStreamer final : public RefCountedWillBeRefCountedGarbageCollected<ScriptStreamer> {
|
| WTF_MAKE_NONCOPYABLE(ScriptStreamer);
|
| public:
|
| - static PassRefPtrWillBeRawPtr<ScriptStreamer> create(ScriptResource* resource, PendingScript::Type scriptType, ScriptState* scriptState, v8::ScriptCompiler::CompileOptions compileOptions)
|
| + static PassRefPtrWillBeRawPtr<ScriptStreamer> create(ScriptResource* resource, PendingScript::Type scriptType, ScriptState* scriptState, v8::ScriptCompiler::CompileOptions compileOptions, WebTaskRunner* loadingTaskRunner)
|
| {
|
| - return adoptRefWillBeNoop(new ScriptStreamer(resource, scriptType, scriptState, compileOptions));
|
| + return adoptRefWillBeNoop(new ScriptStreamer(resource, scriptType, scriptState, compileOptions, loadingTaskRunner));
|
| }
|
|
|
| ~ScriptStreamer();
|
| @@ -42,7 +43,7 @@ public:
|
|
|
| // Launches a task (on a background thread) which will stream the given
|
| // PendingScript into V8 as it loads.
|
| - static void startStreaming(PendingScript&, PendingScript::Type, Settings*, ScriptState*);
|
| + static void startStreaming(PendingScript&, PendingScript::Type, Settings*, ScriptState*, WebTaskRunner*);
|
|
|
| // Returns false if we cannot stream the given encoding.
|
| static bool convertEncoding(const char* encodingName, v8::ScriptCompiler::StreamedSource::Encoding*);
|
| @@ -107,12 +108,12 @@ private:
|
| // streamed. Non-const for testing.
|
| static size_t kSmallScriptThreshold;
|
|
|
| - ScriptStreamer(ScriptResource*, PendingScript::Type, ScriptState*, v8::ScriptCompiler::CompileOptions);
|
| + ScriptStreamer(ScriptResource*, PendingScript::Type, ScriptState*, v8::ScriptCompiler::CompileOptions, WebTaskRunner*);
|
|
|
| void streamingComplete();
|
| void notifyFinishedToClient();
|
|
|
| - static bool startStreamingInternal(PendingScript&, PendingScript::Type, Settings*, ScriptState*);
|
| + static bool startStreamingInternal(PendingScript&, PendingScript::Type, Settings*, ScriptState*, WebTaskRunner*);
|
|
|
| // This pointer is weak. If PendingScript and its Resource are deleted
|
| // before ScriptStreamer, PendingScript will notify ScriptStreamer of its
|
| @@ -149,6 +150,8 @@ private:
|
|
|
| // Encoding of the streamed script. Saved for sanity checking purposes.
|
| v8::ScriptCompiler::StreamedSource::Encoding m_encoding;
|
| +
|
| + OwnPtr<WebTaskRunner> m_loadingTaskRunner;
|
| };
|
|
|
| } // namespace blink
|
|
|