[Webkit-unassigned] [Bug 49035] SVG <path> inside a <defs> is still marked as needing layout at the end of FrameView::layout

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Nov 5 01:00:42 PDT 2010


--- Comment #4 from Nikolas Zimmermann <zimmermann at kde.org>  2010-11-05 01:00:42 PST ---
(In reply to comment #0)
> The assertions in https://bugs.webkit.org/show_bug.cgi?id=49019 trigger on several SVG tests.  Here's a reduction of one of the issues that triggers on svg/custom/recursive-mask.svg:
> <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> 
> <defs>
>     <rect id="rect" x="0" y="100" width="50" height="50" fill="white" mask="url(#mask4)"/> 
>     <mask id="mask4"> 
>         <use xlink:href="#rect"/> 
>     </mask>
> </defs>
> </svg>
> At the end of FrameView::layout() the render tree looks like this:
> RenderView 0x3dbc2d8                       #document    0x3e67420
>   RenderSVGRoot 0x3eba5a8                  svg    0x3eb85c0
>     RenderSVGHiddenContainer 0x3ebc6b8     defs    0x3ebc460
> *     RenderSVGPath 0x3ebdde8              rect    0x3ebca40
>       RenderSVGResourceMasker 0x3ec0168    mask    0x3ebfa40
>         RenderSVGContainer 0x3daf418       use    0x3ebf260
>           RenderSVGContainer 0x3db05b8     g    0x3daf4e0
>             RenderSVGPath 0x3db0738        rect    0x3dafd90
> and the RenderSVGPath associated with the <rect> is still marked as m_needsLayout.
The one marked with the star * ? Or the one cloned <rect> within the <use> subtree?

I guess that's RenderSVGHiddenContainer::layout's fault. More precisely the SVGRenderSupport::layoutChildren optimizations, we could end up with an inconsistent tree there...
Can you investigate a bit further, where it fails to go in the subtree?

Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

More information about the webkit-unassigned mailing list