Bug 232418 - ASSERT(clipRectsContext.rootLayer == m_clipRectsCache->m_clipRectsRoot[clipRectsType]); when updating event regions
Summary: ASSERT(clipRectsContext.rootLayer == m_clipRectsCache->m_clipRectsRoot[clipRe...
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: Safari Technology Preview
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2021-10-27 20:17 PDT by Simon Fraser (smfr)
Modified: 2021-11-03 20:18 PDT (History)
7 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Simon Fraser (smfr) 2021-10-27 20:17:32 PDT
Loading https://focal-theme-ivory.myshopify.com/ in debug (and working around bug 232417) hits this assertion:

  * frame #1: 0x00000003b78bc8cb WebCore`WTFCrashWithInfo((null)=4407, (null)="./rendering/RenderLayer.cpp", (null)="Ref<WebCore::ClipRects> WebCore::RenderLayer::updateClipRects(const WebCore::RenderLayer::ClipRectsContext &)", (null)=2322) at Assertions.h:732:5
    frame #2: 0x00000003bc0d46a7 WebCore`WebCore::RenderLayer::updateClipRects(this=0x000000037c6cc390, clipRectsContext=0x00007ff7ba6b9660) at RenderLayer.cpp:4407:13
    frame #3: 0x00000003bc0d4c56 WebCore`WebCore::RenderLayer::parentClipRects(this=0x000000037c6cc5f0, clipRectsContext=0x00007ff7ba6b9660) const at RenderLayer.cpp:4559:22
    frame #4: 0x00000003bc0c9ca2 WebCore`WebCore::RenderLayer::backgroundClipRect(this=0x000000037c6cc5f0, clipRectsContext=0x00007ff7ba6b9660) const at RenderLayer.cpp:4576:24
    frame #5: 0x00000003bc0d0529 WebCore`WebCore::RenderLayer::calculateRects(this=0x000000037c6cc5f0, clipRectsContext=0x00007ff7ba6b9660, paintDirtyRect={ x = 0px (0), y = 0px (0), width = 1338px (85632), height = 650px (41600) }, layerBounds={ x = 0px (0), y = 0px (0), width = 0px (0), height = 0px (0) }, backgroundRect=0x00007ff7ba6b96a0, foregroundRect=0x00007ff7ba6b96b4, offsetFromRoot={ width = 40px (2560), height = 0px (0) }) const at RenderLayer.cpp:4591:26
    frame #6: 0x00000003bc0ce10c WebCore`WebCore::RenderLayer::collectFragments(this=0x000000037c6cc5f0, fragments={ size = 0, capacity = 1 }, rootLayer=0x000000037c6cc390, dirtyRect={ x = 0px (0), y = 0px (0), width = 1338px (85632), height = 650px (41600) }, inclusionMode=ExcludeCompositedPaginatedLayers, clipRectsType=PaintingClipRects, inOverlayScrollbarSizeRelevancy=IgnoreOverlayScrollbarSize, respectOverflowClip=RespectOverflowClip, offsetFromRoot={ width = 40px (2560), height = 0px (0) }, layerBoundingBox={ x = 0px (0), y = 0px (0), width = 0px (0), height = 0px (0) }, applyRootOffsetToFragments=IgnoreRootOffsetForFragments) at RenderLayer.cpp:3554:9
    frame #7: 0x00000003bc0cadf5 WebCore`WebCore::RenderLayer::paintLayerContents(this=0x000000037c6cc5f0, context=0x00007ff7ba6ba700, paintingInfo=0x00007ff7ba6ba138, paintFlags={ size = 3 }) at RenderLayer.cpp:3381:13
    frame #8: 0x00000003bc0ca491 WebCore`WebCore::RenderLayer::paintLayerContentsAndReflection(this=0x000000037c6cc5f0, context=0x00007ff7ba6ba700, paintingInfo=0x00007ff7ba6ba138, paintFlags={ size = 3 }) at RenderLayer.cpp:3100:5
    frame #9: 0x00000003bc0c93cf WebCore`WebCore::RenderLayer::paintLayerWithEffects(this=0x000000037c6cc5f0, context=0x00007ff7ba6ba700, paintingInfo=0x00007ff7ba6ba138, paintFlags={ size = 3 }) at RenderLayer.cpp:3082:5
    frame #10: 0x00000003bc0c8737 WebCore`WebCore::RenderLayer::paintLayer(this=0x000000037c6cc5f0, context=0x00007ff7ba6ba700, paintingInfo=0x00007ff7ba6ba138, paintFlags={ size = 3 }) at RenderLayer.cpp:3020:5
    frame #11: 0x00000003bc0cee3e WebCore`WebCore::RenderLayer::paintList(this=0x000000037c6cc390, layerIterator=LayerList @ 0x00007ff7ba6b9ed8, context=0x00007ff7ba6ba700, paintingInfo=0x00007ff7ba6ba138, paintFlags={ size = 3 }) at RenderLayer.cpp:3518:21
    frame #12: 0x00000003bc0cb07e WebCore`WebCore::RenderLayer::paintLayerContents(this=0x000000037c6cc390, context=0x00007ff7ba6ba700, paintingInfo=0x00007ff7ba6ba3a0, paintFlags={ size = 3 }) at RenderLayer.cpp:3414:13
    frame #13: 0x00000003bc0ee502 WebCore`WebCore::RenderLayerBacking::paintIntoLayer(this=0x00007ff7ba6ba488, layer=0x000000037c6cc390, paintFlags={ size = 3 })::$_24::operator()(WebCore::RenderLayer&, WTF::OptionSet<WebCore::RenderLayer::PaintLayerFlag>) const at RenderLayerBacking.cpp:3210:19
    frame #14: 0x00000003bc0ede26 WebCore`WebCore::RenderLayerBacking::paintIntoLayer(this=0x00000003ade614b0, graphicsLayer=0x00000003ed772b40, context=0x00007ff7ba6ba700, paintDirtyRect={ x = 0, y = 0, width = 1338, height = 650 }, paintBehavior={ size = 0 }, eventRegionContext=0x00007ff7ba6ba690) at RenderLayerBacking.cpp:3228:5
    frame #15: 0x00000003bc0eaf4f WebCore`WebCore::RenderLayerBacking::updateEventRegion(this=0x00007ff7ba6ba8e8, graphicsLayer=0x00000003ed772b40)::$_17::operator()(WebCore::GraphicsLayer&) const at RenderLayerBacking.cpp:1845:9
Comment 1 Radar WebKit Bug Importer 2021-11-03 20:18:16 PDT
<rdar://problem/85003170>