| Index: Source/modules/imagebitmap/ImageBitmapFactories.cpp
|
| diff --git a/Source/modules/imagebitmap/ImageBitmapFactories.cpp b/Source/modules/imagebitmap/ImageBitmapFactories.cpp
|
| index a24decec24925695d49b25ac27c593aa88be7005..ffd0c7bee94651884f245ef0fc2935621fe1714b 100644
|
| --- a/Source/modules/imagebitmap/ImageBitmapFactories.cpp
|
| +++ b/Source/modules/imagebitmap/ImageBitmapFactories.cpp
|
| @@ -71,9 +71,10 @@ static ScriptPromise fulfillImageBitmap(ExecutionContext* context, PassRefPtr<Im
|
| {
|
| // Promises must be enabled.
|
| ASSERT(RuntimeEnabledFeatures::promiseEnabled());
|
| - RefPtr<ScriptPromiseResolver> resolver = ScriptPromiseResolver::create(context);
|
| - resolver->fulfill(imageBitmap);
|
| - return resolver->promise();
|
| + ScriptPromise promise = ScriptPromise::createPending(context);
|
| + RefPtr<ScriptPromiseResolver> resolver = ScriptPromiseResolver::create(promise, context);
|
| + resolver->resolve(imageBitmap);
|
| + return promise;
|
| }
|
|
|
| ScriptPromise ImageBitmapFactories::createImageBitmap(EventTarget* eventTarget, HTMLImageElement* image, ExceptionState& es)
|
| @@ -204,11 +205,12 @@ ScriptPromise ImageBitmapFactories::createImageBitmap(EventTarget* eventTarget,
|
| es.throwUninformativeAndGenericDOMException(TypeError);
|
| return ScriptPromise();
|
| }
|
| - RefPtr<ScriptPromiseResolver> resolver = ScriptPromiseResolver::create(eventTarget->executionContext());
|
| + ScriptPromise promise = ScriptPromise::createPending(eventTarget->executionContext());
|
| + RefPtr<ScriptPromiseResolver> resolver = ScriptPromiseResolver::create(promise, eventTarget->executionContext());
|
| RefPtr<ImageBitmapLoader> loader = ImageBitmapFactories::ImageBitmapLoader::create(from(eventTarget), resolver, IntRect());
|
| from(eventTarget)->addLoader(loader);
|
| loader->loadBlobAsync(eventTarget->executionContext(), blob);
|
| - return resolver->promise();
|
| + return promise;
|
| }
|
|
|
| ScriptPromise ImageBitmapFactories::createImageBitmap(EventTarget* eventTarget, Blob* blob, int sx, int sy, int sw, int sh, ExceptionState& es)
|
| @@ -224,11 +226,12 @@ ScriptPromise ImageBitmapFactories::createImageBitmap(EventTarget* eventTarget,
|
| es.throwUninformativeAndGenericDOMException(IndexSizeError);
|
| return ScriptPromise();
|
| }
|
| - RefPtr<ScriptPromiseResolver> resolver = ScriptPromiseResolver::create(eventTarget->executionContext());
|
| + ScriptPromise promise = ScriptPromise::createPending(eventTarget->executionContext());
|
| + RefPtr<ScriptPromiseResolver> resolver = ScriptPromiseResolver::create(promise, eventTarget->executionContext());
|
| RefPtr<ImageBitmapLoader> loader = ImageBitmapFactories::ImageBitmapLoader::create(from(eventTarget), resolver, IntRect(sx, sy, sw, sh));
|
| from(eventTarget)->addLoader(loader);
|
| loader->loadBlobAsync(eventTarget->executionContext(), blob);
|
| - return resolver->promise();
|
| + return promise;
|
| }
|
|
|
| ScriptPromise ImageBitmapFactories::createImageBitmap(EventTarget* eventTarget, ImageData* data, ExceptionState& es)
|
| @@ -355,7 +358,7 @@ void ImageBitmapFactories::ImageBitmapLoader::didFinishLoading()
|
|
|
| RefPtr<ImageBitmap> imageBitmap = ImageBitmap::create(image.get(), m_cropRect);
|
| ScriptScope scope(m_scriptState);
|
| - m_resolver->fulfill(imageBitmap.release());
|
| + m_resolver->resolve(imageBitmap.release());
|
| m_factory->didFinishLoading(this);
|
| }
|
|
|
|
|