On Mon, 17 Mar 2025 06:38:18 GMT, Jay Bhaskar <[email protected]> wrote:
> Issue: Some images don't load with WebKit 620.1
>
> WebKit Image Decoding Failure Due to Unintended WebP Format Delivery
> WebKit encounters image decoding failures when certain servers respond with
> WebP images instead of the intended JPEG or PNG format. This issue arises due
> to WebKit's Accept header configuration, which prioritises WebP by default.
> Consequently, incomplete or malformed WebP data results in decoding errors.
>
> Solution:
> Keep the image rendering features and supported formats as webkit 619.1 , and
> accordingly
> update the Accept header to prioritize JPEG/PNG over WebP unless WebP
> decoding is confirmed stable.
I've built and tested on macOS the SDK with this PR, and it works fine now for
the reported cases that were failing.
modules/javafx.web/src/main/native/Source/WebCore/loader/cache/CachedResourceRequest.cpp
line 151:
> 149: StringBuilder builder;
> 150: // Java platform failing to decode webp image data already disabled in
> 619.1
> 151: #if (HAVE(WEBP) || USE(WEBP)) && !PLATFORM(JAVA)
I see that 619.1 indeed had:
#if HAVE(WEBP) || USE(WEBP)
builder.append("image/webp,"_s);
#endif
I wonder why the condition `!PLATFORM(JAVA)` is also required now?
-------------
PR Review: https://git.openjdk.org/jfx/pull/1738#pullrequestreview-2690569143
PR Review Comment: https://git.openjdk.org/jfx/pull/1738#discussion_r1998766992