Index: third_party/WebKit/Source/core/html/canvas/CanvasAsyncBlobCreator.cpp |
diff --git a/third_party/WebKit/Source/core/html/canvas/CanvasAsyncBlobCreator.cpp b/third_party/WebKit/Source/core/html/canvas/CanvasAsyncBlobCreator.cpp |
index 99d80457fbc82d9b94c6922e0466eafe9ec50180..f4456947681f133ad2376a7b1493d0763fcabb2f 100644 |
--- a/third_party/WebKit/Source/core/html/canvas/CanvasAsyncBlobCreator.cpp |
+++ b/third_party/WebKit/Source/core/html/canvas/CanvasAsyncBlobCreator.cpp |
@@ -203,9 +203,6 @@ CanvasAsyncBlobCreator::CanvasAsyncBlobCreator(DOMUint8ClampedArray* data, |
m_pixelRowStride = size.width() * NumChannelsPng; |
m_idleTaskStatus = IdleTaskNotSupported; |
m_numRowsCompleted = 0; |
- if (document) { |
- m_parentFrameTaskRunner = ParentFrameTaskRunners::create(document->frame()); |
- } |
if (m_scriptPromiseResolver) { |
m_functionType = OffscreenCanvasToBlobPromise; |
} else { |
@@ -220,7 +217,6 @@ void CanvasAsyncBlobCreator::dispose() { |
// resources while any remaining posted tasks are queued. |
m_data.clear(); |
m_document.clear(); |
- m_parentFrameTaskRunner.clear(); |
m_callback.clear(); |
m_scriptPromiseResolver.clear(); |
} |
@@ -492,7 +488,8 @@ void CanvasAsyncBlobCreator::encodeImageOnEncoderThread(double quality) { |
if (!ImageDataBuffer(m_size, m_data->data()) |
.encodeImage("image/webp", quality, m_encodedImage.get())) { |
- m_parentFrameTaskRunner->get(TaskType::CanvasBlobSerialization) |
+ FrameTaskRunnerHelper::get(TaskType::CanvasBlobSerialization, |
+ m_document.get()) |
->postTask( |
BLINK_FROM_HERE, |
crossThreadBind(&CanvasAsyncBlobCreator::createNullAndReturnResult, |
@@ -500,7 +497,8 @@ void CanvasAsyncBlobCreator::encodeImageOnEncoderThread(double quality) { |
return; |
} |
- m_parentFrameTaskRunner->get(TaskType::CanvasBlobSerialization) |
+ FrameTaskRunnerHelper::get(TaskType::CanvasBlobSerialization, |
+ m_document.get()) |
->postTask( |
BLINK_FROM_HERE, |
crossThreadBind(&CanvasAsyncBlobCreator::createBlobAndReturnResult, |
@@ -618,7 +616,6 @@ DEFINE_TRACE(CanvasAsyncBlobCreator) { |
visitor->trace(m_document); |
visitor->trace(m_data); |
visitor->trace(m_callback); |
- visitor->trace(m_parentFrameTaskRunner); |
visitor->trace(m_scriptPromiseResolver); |
} |