Bug 197731
Summary: | Sometimes we hit ASSERT(!parentClipRect.isInfinite()) in RenderLayerBacking::computeParentGraphicsLayerRect | ||
---|---|---|---|
Product: | WebKit | Reporter: | Simon Fraser (smfr) <simon.fraser> |
Component: | Compositing | Assignee: | Nobody <webkit-unassigned> |
Status: | RESOLVED DUPLICATE | ||
Severity: | Normal | CC: | simon.fraser, zalan |
Priority: | P2 | ||
Version: | WebKit Nightly Build | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
See Also: | https://bugs.webkit.org/show_bug.cgi?id=126160 |
Simon Fraser (smfr)
At webkit r245059, we sometimes assert at ASSERT(!parentClipRect.isInfinite()) in RenderLayerBacking::computeParentGraphicsLayerRect.
I can reproduce this in DumpRenderTree with accessibility/media-element.html
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Simon Fraser (smfr)
This code runs when we have a m_ancestorClippingLayer, and we make one based on the result of RenderLayerCompositor::clippedByAncestor(), which uses:
layer.backgroundClipRect(RenderLayer::ClipRectsContext(computeClipRoot, TemporaryClipRects)).isInfinite()
However, RenderLayerBacking::computeParentGraphicsLayerRect() is doing:
ShouldRespectOverflowClip shouldRespectOverflowClip = compositedAncestor->isolatesCompositedBlending() ? RespectOverflowClip : IgnoreOverflowClip;
RenderLayer::ClipRectsContext clipRectsContext(compositedAncestor, TemporaryClipRects, IgnoreOverlayScrollbarSize, shouldRespectOverflowClip);
LayoutRect parentClipRect = m_owningLayer.backgroundClipRect(clipRectsContext).rect(); // FIXME: Incorrect for CSS regions.
so 'shouldRespectOverflowClip' differs.
Simon Fraser (smfr)
That code came from https://trac.webkit.org/changeset/168314/webkit
Simon Fraser (smfr)
*** This bug has been marked as a duplicate of bug 197695 ***