RESOLVED DUPLICATE of bug 219705 218871
[GPU Process] Support rendering PDFDocumentImage in GPU Process
https://bugs.webkit.org/show_bug.cgi?id=218871
Summary [GPU Process] Support rendering PDFDocumentImage in GPU Process
Said Abou-Hallawa
Reported 2020-11-12 14:16:23 PST
Created attachment 413975 [details] test-pdf Open the attached test case. Result: WebKit crashes with the calls stack below. Note: Currently we do not record drawing the PDFDocumentImage. We need to ensure that drawing the PDFDocumentImage to a the ImageBuffer happens in the GPU Process. #0 0x00000001f283a8ec in WTF::RetainPtr<CGContext*>::operator!() const at /Volumes/Data/WebKit/OpenSource/WebKitBuild/Debug/usr/local/include/wtf/RetainPtr.h:107 #1 0x00000001f283a0c6 in WebCore::GraphicsContext::platformContext() const at /Volumes/Data/WebKit/OpenSource/Source/WebCore/platform/graphics/cg/GraphicsContextCG.cpp:253 #2 0x00000001f2855b5a in WebCore::ImageBufferCGBackend::contextColorSpace(WebCore::GraphicsContext const&) at /Volumes/Data/WebKit/OpenSource/Source/WebCore/platform/graphics/cg/ImageBufferCGBackend.cpp:49 #3 0x00000001f2858302 in WebCore::ImageBufferCGBitmapBackend::create(WebCore::FloatSize const&, WebCore::GraphicsContext const&) at /Volumes/Data/WebKit/OpenSource/Source/WebCore/platform/graphics/cg/ImageBufferCGBitmapBackend.cpp:78 #4 0x00000001f277bbc6 in WTF::RefPtr<WebCore::ConcreteImageBuffer<WebCore::ImageBufferCGBitmapBackend>, WTF::RawPtrTraits<WebCore::ConcreteImageBuffer<WebCore::ImageBufferCGBitmapBackend> >, WTF::DefaultRefDerefTraits<WebCore::ConcreteImageBuffer<WebCore::ImageBufferCGBitmapBackend> > > WebCore::ConcreteImageBuffer<WebCore::ImageBufferCGBitmapBackend>::create<WebCore::ConcreteImageBuffer<WebCore::ImageBufferCGBitmapBackend> >(WebCore::FloatSize const&, WebCore::GraphicsContext const&) at /Volumes/Data/WebKit/OpenSource/Source/WebCore/platform/graphics/ConcreteImageBuffer.h:48 #5 0x00000001f277ba92 in WebCore::ImageBuffer::create(WebCore::FloatSize const&, WebCore::GraphicsContext const&) at /Volumes/Data/WebKit/OpenSource/Source/WebCore/platform/graphics/ImageBuffer.cpp:82 #6 0x00000001f277bccc in WebCore::ImageBuffer::createCompatibleBuffer(WebCore::FloatSize const&, WebCore::GraphicsContext const&) at /Volumes/Data/WebKit/OpenSource/Source/WebCore/platform/graphics/ImageBuffer.cpp:94 #7 0x00000001f2861164 in WebCore::PDFDocumentImage::updateCachedImageIfNeeded(WebCore::GraphicsContext&, WebCore::FloatRect const&, WebCore::FloatRect const&) at /Volumes/Data/WebKit/OpenSource/Source/WebCore/platform/graphics/cg/PDFDocumentImage.cpp:239 #8 0x00000001f2861793 in WebCore::PDFDocumentImage::draw(WebCore::GraphicsContext&, WebCore::FloatRect const&, WebCore::FloatRect const&, WebCore::ImagePaintingOptions const&) at /Volumes/Data/WebKit/OpenSource/Source/WebCore/platform/graphics/cg/PDFDocumentImage.cpp:266 #9 0x00000001f2754372 in WebCore::GraphicsContext::drawImage(WebCore::Image&, WebCore::FloatRect const&, WebCore::FloatRect const&, WebCore::ImagePaintingOptions const&) at /Volumes/Data/WebKit/OpenSource/Source/WebCore/platform/graphics/GraphicsContext.cpp:764 #10 0x00000001f1c675b4 in WebCore::CanvasRenderingContext2DBase::drawImage(WebCore::Document&, WebCore::CachedImage*, WebCore::RenderObject const*, WebCore::FloatRect const&, WebCore::FloatRect const&, WebCore::FloatRect const&, WebCore::CompositeOperator const&, WebCore::BlendMode const&, WebCore::ImageOrientation) at /Volumes/Data/WebKit/OpenSource/Source/WebCore/html/canvas/CanvasRenderingContext2DBase.cpp:1552 #11 0x00000001f1c66bc3 in WebCore::CanvasRenderingContext2DBase::drawImage(WebCore::HTMLImageElement&, WebCore::FloatRect const&, WebCore::FloatRect const&, WebCore::CompositeOperator const&, WebCore::BlendMode const&) at /Volumes/Data/WebKit/OpenSource/Source/WebCore/html/canvas/CanvasRenderingContext2DBase.cpp:1460 #12 0x00000001f1c6695c in WebCore::CanvasRenderingContext2DBase::drawImage(WebCore::HTMLImageElement&, WebCore::FloatRect const&, WebCore::FloatRect const&) at /Volumes/Data/WebKit/OpenSource/Source/WebCore/html/canvas/CanvasRenderingContext2DBase.cpp:1443 #13 0x00000001f1c7ece4 in WebCore::ExceptionOr<void> WebCore::CanvasRenderingContext2DBase::drawImage(WTF::Variant<WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> >, WTF::RefPtr<WebCore::HTMLCanvasElement, WTF::RawPtrTraits<WebCore::HTMLCanvasElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLCanvasElement> >, WTF::RefPtr<WebCore::ImageBitmap, WTF::RawPtrTraits<WebCore::ImageBitmap>, WTF::DefaultRefDerefTraits<WebCore::ImageBitmap> >, WTF::RefPtr<WebCore::TypedOMCSSImageValue, WTF::RawPtrTraits<WebCore::TypedOMCSSImageValue>, WTF::DefaultRefDerefTraits<WebCore::TypedOMCSSImageValue> >, WTF::RefPtr<WebCore::HTMLVideoElement, WTF::RawPtrTraits<WebCore::HTMLVideoElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLVideoElement> > >&&, float, float, float, float)::$_4::operator()<WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> > >(WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> >&) const at /Volumes/Data/WebKit/OpenSource/Source/WebCore/html/canvas/CanvasRenderingContext2DBase.cpp:1427 #14 0x00000001f1c7eab6 in WebCore::ExceptionOr<void> WTF::__visitor_table<WTF::Visitor<WebCore::CanvasRenderingContext2DBase::drawImage(WTF::Variant<WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> >, WTF::RefPtr<WebCore::HTMLCanvasElement, WTF::RawPtrTraits<WebCore::HTMLCanvasElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLCanvasElement> >, WTF::RefPtr<WebCore::ImageBitmap, WTF::RawPtrTraits<WebCore::ImageBitmap>, WTF::DefaultRefDerefTraits<WebCore::ImageBitmap> >, WTF::RefPtr<WebCore::TypedOMCSSImageValue, WTF::RawPtrTraits<WebCore::TypedOMCSSImageValue>, WTF::DefaultRefDerefTraits<WebCore::TypedOMCSSImageValue> >, WTF::RefPtr<WebCore::HTMLVideoElement, WTF::RawPtrTraits<WebCore::HTMLVideoElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLVideoElement> > >&&, float, float, float, float)::$_4>, WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> >, WTF::RefPtr<WebCore::HTMLCanvasElement, WTF::RawPtrTraits<WebCore::HTMLCanvasElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLCanvasElement> >, WTF::RefPtr<WebCore::ImageBitmap, WTF::RawPtrTraits<WebCore::ImageBitmap>, WTF::DefaultRefDerefTraits<WebCore::ImageBitmap> >, WTF::RefPtr<WebCore::TypedOMCSSImageValue, WTF::RawPtrTraits<WebCore::TypedOMCSSImageValue>, WTF::DefaultRefDerefTraits<WebCore::TypedOMCSSImageValue> >, WTF::RefPtr<WebCore::HTMLVideoElement, WTF::RawPtrTraits<WebCore::HTMLVideoElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLVideoElement> > >::__trampoline_func<WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> > >(WTF::Visitor<WebCore::CanvasRenderingContext2DBase::drawImage(WTF::Variant<WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> >, WTF::RefPtr<WebCore::HTMLCanvasElement, WTF::RawPtrTraits<WebCore::HTMLCanvasElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLCanvasElement> >, WTF::RefPtr<WebCore::ImageBitmap, WTF::RawPtrTraits<WebCore::ImageBitmap>, WTF::DefaultRefDerefTraits<WebCore::ImageBitmap> >, WTF::RefPtr<WebCore::TypedOMCSSImageValue, WTF::RawPtrTraits<WebCore::TypedOMCSSImageValue>, WTF::DefaultRefDerefTraits<WebCore::TypedOMCSSImageValue> >, WTF::RefPtr<WebCore::HTMLVideoElement, WTF::RawPtrTraits<WebCore::HTMLVideoElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLVideoElement> > >&&, float, float, float, float)::$_4>&, WTF::Variant<WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> >, WTF::RefPtr<WebCore::HTMLCanvasElement, WTF::RawPtrTraits<WebCore::HTMLCanvasElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLCanvasElement> >, WTF::RefPtr<WebCore::ImageBitmap, WTF::RawPtrTraits<WebCore::ImageBitmap>, WTF::DefaultRefDerefTraits<WebCore::ImageBitmap> >, WTF::RefPtr<WebCore::TypedOMCSSImageValue, WTF::RawPtrTraits<WebCore::TypedOMCSSImageValue>, WTF::DefaultRefDerefTraits<WebCore::TypedOMCSSImageValue> >, WTF::RefPtr<WebCore::HTMLVideoElement, WTF::RawPtrTraits<WebCore::HTMLVideoElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLVideoElement> > >&) at /Volumes/Data/WebKit/OpenSource/WebKitBuild/Debug/usr/local/include/wtf/Variant.h:1870 #15 0x00000001f1c7e9dd in WTF::__visitor_return_type<WTF::Visitor<WebCore::CanvasRenderingContext2DBase::drawImage(WTF::Variant<WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> >, WTF::RefPtr<WebCore::HTMLCanvasElement, WTF::RawPtrTraits<WebCore::HTMLCanvasElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLCanvasElement> >, WTF::RefPtr<WebCore::ImageBitmap, WTF::RawPtrTraits<WebCore::ImageBitmap>, WTF::DefaultRefDerefTraits<WebCore::ImageBitmap> >, WTF::RefPtr<WebCore::TypedOMCSSImageValue, WTF::RawPtrTraits<WebCore::TypedOMCSSImageValue>, WTF::DefaultRefDerefTraits<WebCore::TypedOMCSSImageValue> >, WTF::RefPtr<WebCore::HTMLVideoElement, WTF::RawPtrTraits<WebCore::HTMLVideoElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLVideoElement> > >&&, float, float, float, float)::$_4>, WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> >, WTF::RefPtr<WebCore::HTMLCanvasElement, WTF::RawPtrTraits<WebCore::HTMLCanvasElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLCanvasElement> >, WTF::RefPtr<WebCore::ImageBitmap, WTF::RawPtrTraits<WebCore::ImageBitmap>, WTF::DefaultRefDerefTraits<WebCore::ImageBitmap> >, WTF::RefPtr<WebCore::TypedOMCSSImageValue, WTF::RawPtrTraits<WebCore::TypedOMCSSImageValue>, WTF::DefaultRefDerefTraits<WebCore::TypedOMCSSImageValue> >, WTF::RefPtr<WebCore::HTMLVideoElement, WTF::RawPtrTraits<WebCore::HTMLVideoElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLVideoElement> > >::__type WTF::visit<WTF::Visitor<WebCore::CanvasRenderingContext2DBase::drawImage(WTF::Variant<WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> >, WTF::RefPtr<WebCore::HTMLCanvasElement, WTF::RawPtrTraits<WebCore::HTMLCanvasElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLCanvasElement> >, WTF::RefPtr<WebCore::ImageBitmap, WTF::RawPtrTraits<WebCore::ImageBitmap>, WTF::DefaultRefDerefTraits<WebCore::ImageBitmap> >, WTF::RefPtr<WebCore::TypedOMCSSImageValue, WTF::RawPtrTraits<WebCore::TypedOMCSSImageValue>, WTF::DefaultRefDerefTraits<WebCore::TypedOMCSSImageValue> >, WTF::RefPtr<WebCore::HTMLVideoElement, WTF::RawPtrTraits<WebCore::HTMLVideoElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLVideoElement> > >&&, float, float, float, float)::$_4>, WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> >, WTF::RefPtr<WebCore::HTMLCanvasElement, WTF::RawPtrTraits<WebCore::HTMLCanvasElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLCanvasElement> >, WTF::RefPtr<WebCore::ImageBitmap, WTF::RawPtrTraits<WebCore::ImageBitmap>, WTF::DefaultRefDerefTraits<WebCore::ImageBitmap> >, WTF::RefPtr<WebCore::TypedOMCSSImageValue, WTF::RawPtrTraits<WebCore::TypedOMCSSImageValue>, WTF::DefaultRefDerefTraits<WebCore::TypedOMCSSImageValue> >, WTF::RefPtr<WebCore::HTMLVideoElement, WTF::RawPtrTraits<WebCore::HTMLVideoElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLVideoElement> > >(WTF::Visitor<WebCore::CanvasRenderingContext2DBase::drawImage(WTF::Variant<WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> >, WTF::RefPtr<WebCore::HTMLCanvasElement, WTF::RawPtrTraits<WebCore::HTMLCanvasElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLCanvasElement> >, WTF::RefPtr<WebCore::ImageBitmap, WTF::RawPtrTraits<WebCore::ImageBitmap>, WTF::DefaultRefDerefTraits<WebCore::ImageBitmap> >, WTF::RefPtr<WebCore::TypedOMCSSImageValue, WTF::RawPtrTraits<WebCore::TypedOMCSSImageValue>, WTF::DefaultRefDerefTraits<WebCore::TypedOMCSSImageValue> >, WTF::RefPtr<WebCore::HTMLVideoElement, WTF::RawPtrTraits<WebCore::HTMLVideoElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLVideoElement> > >&&, float, float, float, float)::$_4>&&, WTF::Variant<WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> >, WTF::RefPtr<WebCore::HTMLCanvasElement, WTF::RawPtrTraits<WebCore::HTMLCanvasElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLCanvasElement> >, WTF::RefPtr<WebCore::ImageBitmap, WTF::RawPtrTraits<WebCore::ImageBitmap>, WTF::DefaultRefDerefTraits<WebCore::ImageBitmap> >, WTF::RefPtr<WebCore::TypedOMCSSImageValue, WTF::RawPtrTraits<WebCore::TypedOMCSSImageValue>, WTF::DefaultRefDerefTraits<WebCore::TypedOMCSSImageValue> >, WTF::RefPtr<WebCore::HTMLVideoElement, WTF::RawPtrTraits<WebCore::HTMLVideoElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLVideoElement> > >&) at /Volumes/Data/WebKit/OpenSource/WebKitBuild/Debug/usr/local/include/wtf/Variant.h:1886 #16 0x00000001f1c66761 in decltype(WTF::visit(makeVisitor(std::forward<WebCore::CanvasRenderingContext2DBase::drawImage(WTF::Variant<WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> >, WTF::RefPtr<WebCore::HTMLCanvasElement, WTF::RawPtrTraits<WebCore::HTMLCanvasElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLCanvasElement> >, WTF::RefPtr<WebCore::ImageBitmap, WTF::RawPtrTraits<WebCore::ImageBitmap>, WTF::DefaultRefDerefTraits<WebCore::ImageBitmap> >, WTF::RefPtr<WebCore::TypedOMCSSImageValue, WTF::RawPtrTraits<WebCore::TypedOMCSSImageValue>, WTF::DefaultRefDerefTraits<WebCore::TypedOMCSSImageValue> >, WTF::RefPtr<WebCore::HTMLVideoElement, WTF::RawPtrTraits<WebCore::HTMLVideoElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLVideoElement> > >&&, float, float, float, float)::$_4>(fp0)), std::forward<WTF::Variant<WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> >, WTF::RefPtr<WebCore::HTMLCanvasElement, WTF::RawPtrTraits<WebCore::HTMLCanvasElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLCanvasElement> >, WTF::RefPtr<WebCore::ImageBitmap, WTF::RawPtrTraits<WebCore::ImageBitmap>, WTF::DefaultRefDerefTraits<WebCore::ImageBitmap> >, WTF::RefPtr<WebCore::TypedOMCSSImageValue, WTF::RawPtrTraits<WebCore::TypedOMCSSImageValue>, WTF::DefaultRefDerefTraits<WebCore::TypedOMCSSImageValue> >, WTF::RefPtr<WebCore::HTMLVideoElement, WTF::RawPtrTraits<WebCore::HTMLVideoElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLVideoElement> > >&>(fp))) WTF::switchOn<WTF::Variant<WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> >, WTF::RefPtr<WebCore::HTMLCanvasElement, WTF::RawPtrTraits<WebCore::HTMLCanvasElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLCanvasElement> >, WTF::RefPtr<WebCore::ImageBitmap, WTF::RawPtrTraits<WebCore::ImageBitmap>, WTF::DefaultRefDerefTraits<WebCore::ImageBitmap> >, WTF::RefPtr<WebCore::TypedOMCSSImageValue, WTF::RawPtrTraits<WebCore::TypedOMCSSImageValue>, WTF::DefaultRefDerefTraits<WebCore::TypedOMCSSImageValue> >, WTF::RefPtr<WebCore::HTMLVideoElement, WTF::RawPtrTraits<WebCore::HTMLVideoElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLVideoElement> > >&, WebCore::CanvasRenderingContext2DBase::drawImage(WTF::Variant<WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> >, WTF::RefPtr<WebCore::HTMLCanvasElement, WTF::RawPtrTraits<WebCore::HTMLCanvasElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLCanvasElement> >, WTF::RefPtr<WebCore::ImageBitmap, WTF::RawPtrTraits<WebCore::ImageBitmap>, WTF::DefaultRefDerefTraits<WebCore::ImageBitmap> >, WTF::RefPtr<WebCore::TypedOMCSSImageValue, WTF::RawPtrTraits<WebCore::TypedOMCSSImageValue>, WTF::DefaultRefDerefTraits<WebCore::TypedOMCSSImageValue> >, WTF::RefPtr<WebCore::HTMLVideoElement, WTF::RawPtrTraits<WebCore::HTMLVideoElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLVideoElement> > >&&, float, float, float, float)::$_4>(WTF::Variant<WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> >, WTF::RefPtr<WebCore::HTMLCanvasElement, WTF::RawPtrTraits<WebCore::HTMLCanvasElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLCanvasElement> >, WTF::RefPtr<WebCore::ImageBitmap, WTF::RawPtrTraits<WebCore::ImageBitmap>, WTF::DefaultRefDerefTraits<WebCore::ImageBitmap> >, WTF::RefPtr<WebCore::TypedOMCSSImageValue, WTF::RawPtrTraits<WebCore::TypedOMCSSImageValue>, WTF::DefaultRefDerefTraits<WebCore::TypedOMCSSImageValue> >, WTF::RefPtr<WebCore::HTMLVideoElement, WTF::RawPtrTraits<WebCore::HTMLVideoElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLVideoElement> > >&, WebCore::CanvasRenderingContext2DBase::drawImage(WTF::Variant<WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> >, WTF::RefPtr<WebCore::HTMLCanvasElement, WTF::RawPtrTraits<WebCore::HTMLCanvasElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLCanvasElement> >, WTF::RefPtr<WebCore::ImageBitmap, WTF::RawPtrTraits<WebCore::ImageBitmap>, WTF::DefaultRefDerefTraits<WebCore::ImageBitmap> >, WTF::RefPtr<WebCore::TypedOMCSSImageValue, WTF::RawPtrTraits<WebCore::TypedOMCSSImageValue>, WTF::DefaultRefDerefTraits<WebCore::TypedOMCSSImageValue> >, WTF::RefPtr<WebCore::HTMLVideoElement, WTF::RawPtrTraits<WebCore::HTMLVideoElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLVideoElement> > >&&, float, float, float, float)::$_4&&) at /Volumes/Data/WebKit/OpenSource/WebKitBuild/Debug/usr/local/include/wtf/Variant.h:2051 #17 0x00000001f1c666b7 in WebCore::CanvasRenderingContext2DBase::drawImage(WTF::Variant<WTF::RefPtr<WebCore::HTMLImageElement, WTF::RawPtrTraits<WebCore::HTMLImageElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLImageElement> >, WTF::RefPtr<WebCore::HTMLCanvasElement, WTF::RawPtrTraits<WebCore::HTMLCanvasElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLCanvasElement> >, WTF::RefPtr<WebCore::ImageBitmap, WTF::RawPtrTraits<WebCore::ImageBitmap>, WTF::DefaultRefDerefTraits<WebCore::ImageBitmap> >, WTF::RefPtr<WebCore::TypedOMCSSImageValue, WTF::RawPtrTraits<WebCore::TypedOMCSSImageValue>, WTF::DefaultRefDerefTraits<WebCore::TypedOMCSSImageValue> >, WTF::RefPtr<WebCore::HTMLVideoElement, WTF::RawPtrTraits<WebCore::HTMLVideoElement>, WTF::DefaultRefDerefTraits<WebCore::HTMLVideoElement> > >&&, float, float, float, float) at /Volumes/Data/WebKit/OpenSource/Source/WebCore/html/canvas/CanvasRenderingContext2DBase.cpp:1424 #18 0x00000001eef7aa71 in WebCore::jsCanvasRenderingContext2DPrototypeFunction_drawImage2Body(JSC::JSGlobalObject*, JSC::CallFrame*, WebCore::JSCanvasRenderingContext2D*) at /Volumes/Data/WebKit/OpenSource/WebKitBuild/Debug/DerivedSources/WebCore/JSCanvasRenderingContext2D.cpp:1915 #19 0x00000001eef79d2b in WebCore::jsCanvasRenderingContext2DPrototypeFunction_drawImageOverloadDispatcher(JSC::JSGlobalObject*, JSC::CallFrame*, WebCore::JSCanvasRenderingContext2D*) at /Volumes/Data/WebKit/OpenSource/WebKitBuild/Debug/DerivedSources/WebCore/JSCanvasRenderingContext2D.cpp:1971 #20 0x00000001eef79bcc in long long WebCore::IDLOperation<WebCore::JSCanvasRenderingContext2D>::call<&(WebCore::jsCanvasRenderingContext2DPrototypeFunction_drawImageOverloadDispatcher(JSC::JSGlobalObject*, JSC::CallFrame*, WebCore::JSCanvasRenderingContext2D*)), (WebCore::CastedThisErrorBehavior)0>(JSC::JSGlobalObject&, JSC::CallFrame&, char const*) at /Volumes/Data/WebKit/OpenSource/Source/WebCore/bindings/js/JSDOMOperation.h:53 #21 0x00000001eef2d274 in WebCore::jsCanvasRenderingContext2DPrototypeFunction_drawImage(JSC::JSGlobalObject*, JSC::CallFrame*) at /Volumes/Data/WebKit/OpenSource/WebKitBuild/Debug/DerivedSources/WebCore/JSCanvasRenderingContext2D.cpp:1981
Attachments
test-pdf (2.66 KB, application/zip)
2020-11-12 14:16 PST, Said Abou-Hallawa
no flags
Patch (121.33 KB, patch)
2020-11-19 19:46 PST, Said Abou-Hallawa
no flags
Patch (121.45 KB, patch)
2020-11-19 20:23 PST, Said Abou-Hallawa
no flags
Patch (129.28 KB, patch)
2020-11-19 22:42 PST, Said Abou-Hallawa
ews-feeder: commit-queue-
Patch (131.23 KB, patch)
2020-11-19 23:09 PST, Said Abou-Hallawa
ews-feeder: commit-queue-
Patch (131.59 KB, patch)
2020-11-19 23:18 PST, Said Abou-Hallawa
ews-feeder: commit-queue-
Patch (135.97 KB, patch)
2020-11-20 00:26 PST, Said Abou-Hallawa
no flags
Patch (46.14 KB, patch)
2020-11-30 02:08 PST, Said Abou-Hallawa
no flags
Patch (45.37 KB, patch)
2020-12-01 00:02 PST, Said Abou-Hallawa
ews-feeder: commit-queue-
Radar WebKit Bug Importer
Comment 1 2020-11-19 14:17:17 PST
Said Abou-Hallawa
Comment 2 2020-11-19 19:46:36 PST
Said Abou-Hallawa
Comment 3 2020-11-19 20:23:06 PST
Said Abou-Hallawa
Comment 4 2020-11-19 22:42:20 PST
Said Abou-Hallawa
Comment 5 2020-11-19 23:09:27 PST
Said Abou-Hallawa
Comment 6 2020-11-19 23:18:08 PST
Said Abou-Hallawa
Comment 7 2020-11-20 00:26:58 PST
Said Abou-Hallawa
Comment 8 2020-11-30 02:08:11 PST
Said Abou-Hallawa
Comment 9 2020-12-01 00:02:22 PST
Said Abou-Hallawa
Comment 10 2021-02-01 12:24:31 PST
The PDF is decoded and converted to a NativeImage in WebP and the NativeImage is drawn in GPUP since r270605. We can consider this bug is fixed, unless we want to integrate the clean-up.
Said Abou-Hallawa
Comment 11 2021-03-05 10:27:53 PST
I do not think this clean up will be needed soon. So resolve this bug for now. *** This bug has been marked as a duplicate of bug 219705 ***
Note You need to log in before you can comment on or make changes to this bug.