Bug 222124 - RenderLayer::calculateLayerBounds() is wrong with clipping
Summary: RenderLayer::calculateLayerBounds() is wrong with clipping
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: Compositing (show other bugs)
Version: Safari Technology Preview
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2021-02-18 11:42 PST by Simon Fraser (smfr)
Modified: 2021-02-25 11:43 PST (History)
2 users (show)

See Also:


Attachments
Test case (912 bytes, text/html)
2021-02-18 11:42 PST, Simon Fraser (smfr)
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Simon Fraser (smfr) 2021-02-18 11:42:55 PST
Created attachment 420859 [details]
Test case

The UseLocalClipRectIfPossible code path in RenderLayer::calculateLayerBounds() assumes that all descendants are affected by the clip, but that'd wrong; this layer might not be in the containing block ancestry of descendant layers.
Comment 1 Simon Fraser (smfr) 2021-02-18 11:52:35 PST
I think it needs to call clipRectRelativeToAncestor() with the ancestorLayer all the way down, rather than resetting ancestorLayer at each level.
Comment 2 Radar WebKit Bug Importer 2021-02-25 11:43:44 PST
<rdar://problem/74753726>