Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: e9ba1c28e0567333b945e857e56c451268661409
https://github.com/WebKit/WebKit/commit/e9ba1c28e0567333b945e857e56c451268661409
Author: Claudio Saavedra <[email protected]>
Date: 2026-07-13 (Mon, 13 Jul 2026)
Changed paths:
M Source/WebCore/platform/graphics/CrossfadeGeneratedImage.cpp
Log Message:
-----------
REGRESSION(316802@main) : imported/blink/fast/backgrounds/bug420029.html
constantly crashing in Debug
https://bugs.webkit.org/show_bug.cgi?id=319242
Reviewed by Carlos Garcia Campos.
CrossfadeGeneratedImage computed its scale factor with an unguarded
FloatSize / FloatSize division. When a cross-fade source image has an
empty size, the divisor is zero and the resulting non-finite scale
poisons the CTM, so every image drawn afterwards is recorded under a
NaN/inf transform.
This was harmless until the recording started using an SkBBHFactory,
whose bounds pass maps each op's transform and aborts in Skia's
computeFastBounds() when the rectangle is not sorted.
Skip the scale when the source image or srcRect is empty, keeping the
transform finite.
Covered by imported/blink/fast/backgrounds/bug420029.html
* Source/WebCore/platform/graphics/CrossfadeGeneratedImage.cpp:
(WebCore::drawCrossfadeSubimage):
(WebCore::CrossfadeGeneratedImage::draw):
Canonical link: https://commits.webkit.org/317040@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications