Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7f5aa01cf8588186794b44f1629d0e7a15f64f08
      
https://github.com/WebKit/WebKit/commit/7f5aa01cf8588186794b44f1629d0e7a15f64f08
  Author: Ahmad Saleem <[email protected]>
  Date:   2026-10-01 (Thu, 01 Oct 2026)

  Changed paths:
    M Source/WebCore/rendering/RenderLayer.cpp
    M Source/WebCore/rendering/RenderLayerBacking.cpp

  Log Message:
  -----------
  Use removeIf / removeAllMatching instead of building temporary vectors in 
RenderLayer and RenderLayerBacking
https://bugs.webkit.org/show_bug.cgi?id=325926
rdar://188891751

Reviewed by Simon Fraser.

Simplify two places that built a temporary vector only to filter a container.
In performOverlapTests(), use HashMap::removeIf() to notify and remove the
overlapped clients in a single pass, rather than collecting them into a
temporary vector and removing them afterwards.

In RenderLayerBacking, use Vector::removeAllMatching() to prune effects that
only animate non-interpolating properties in place, rather than copying the
whole effect list (and churning refcounts) and re-appending the survivors.
The set of timelines is then rebuilt from the remaining effects.

No change in behavior.

* Source/WebCore/rendering/RenderLayer.cpp:
(WebCore::performOverlapTests):
* Source/WebCore/rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateAcceleratedEffectsAndBaseValues):

Canonical link: https://commits.webkit.org/322446@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to