RFR: 8347937: Canvas pattern test fails and crashes on WebKit 620.1

Kevin Rushforth kcr at openjdk.org
Fri Mar 21 21:13:18 UTC 2025


On Fri, 21 Mar 2025 08:17:39 GMT, Jay Bhaskar <jbhaskar at openjdk.org> wrote:

> Issue: 
> Ref: Webkit 619.1 javafx.web/src/main/native/Source/WebCore/platform/graphics/ImageSource.cpp refactoring in 620.1
> In the case of the canvas pattern using a transform property filled with an SVGMatrix()
> created by an SVG element, `frame.m_nativeImage->size()` calls `NativeImage::size()`
> from NativeImageJava.cpp. In this scenario, `*m_platformImage->getImage().get()` may be invalid,
> as the image decoder has already populated `frame.m_size` during image metadata caching.
> 
> Solution:
> To avoid potential invalid accesses and unintended size resets, only update `m_size`
> if the frame does not already have a valid native image.

I attached a simple `canvas.html`, taken from the failing CanvasTest unit test to the JBS bug. That test fails to render on WebKit 620.1 (although, unlike the unit test, it doesn't crash) without this fix and renders correctly with this fix.

-------------

PR Comment: https://git.openjdk.org/jfx/pull/1740#issuecomment-2744454664


More information about the openjfx-dev mailing list