Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: b7aad8b68633d1284f317daf81a5f78c842a383c
https://github.com/WebKit/WebKit/commit/b7aad8b68633d1284f317daf81a5f78c842a383c
Author: Antoine Quint <[email protected]>
Date: 2026-01-13 (Tue, 13 Jan 2026)
Changed paths:
A
LayoutTests/webanimations/threaded-animations/filter-animation-crash-expected.txt
A LayoutTests/webanimations/threaded-animations/filter-animation-crash.html
M Source/WebCore/platform/animation/AcceleratedEffect.cpp
M Source/WebCore/platform/animation/AcceleratedEffect.h
M Source/WebCore/rendering/RenderLayerBacking.cpp
Log Message:
-----------
[threaded-animations] merlyndesignworks.co.uk page crashes repeatedly
(invalid message: RemoteLayerTreeDrawingAreaProxy_CommitLayerTree)
https://bugs.webkit.org/show_bug.cgi?id=305396
rdar://167992456
Reviewed by Simon Fraser.
There were several issues with our filter validation approach under
`AcceleratedEffect::validateFilters()`:
- while it would correctly catch the case where a `drop-shadow()` filter was
used anywhere but
as the last filter and mark that property as disallowed, it would not clear
the `filter` or
`backdropFilter` value in the keyframes,
- disallowing a property also did not ensure that we would clear the base
values,
- it wouldn't either clear base values of any previous effect,
- we wouldn't catch the case where `drop-shadow()` contained a color which is
entirely not supported.
We now correctly catch such situations.
Test: webanimations/threaded-animations/filter-animation-crash.html
*
LayoutTests/webanimations/threaded-animations/filter-animation-crash-expected.txt:
Added.
* LayoutTests/webanimations/threaded-animations/filter-animation-crash.html:
Added.
* Source/WebCore/platform/animation/AcceleratedEffect.cpp:
(WebCore::AcceleratedEffect::Keyframe::clearProperty):
(WebCore::AcceleratedEffect::validateFilters):
(WebCore::AcceleratedEffect::clearProperty):
* Source/WebCore/platform/animation/AcceleratedEffect.h:
* Source/WebCore/rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateAcceleratedEffectsAndBaseValues):
Canonical link: https://commits.webkit.org/305530@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications