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

Reply via email to