Bug 203278

Summary: [SVG2] Fix SVGSVGElement to conform with SVG2
Product: WebKit Reporter: Said Abou-Hallawa <sabouhallawa>
Component: SVGAssignee: Said Abou-Hallawa <sabouhallawa>
Status: RESOLVED FIXED    
Severity: Normal CC: cdumez, commit-queue, dino, esprehn+autocc, ews-watchlist, fmalita, gyuyoung.kim, kondapallykalyan, pdr, schenney, sergio, simon.fraser, webkit-bug-importer, zimmermann
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 191292, 200143    
Attachments:
Description Flags
Patch
none
Patch none

Description Said Abou-Hallawa 2019-10-22 15:45:19 PDT
The interface of SVGSVGElement is defined here: https://www.w3.org/TR/SVG2/struct.html#InterfaceSVGSVGElement.

Related WPT tests: https://wpt.fyi/results/svg/historical.html?label=experimental&label=master&aligned.
Comment 1 Said Abou-Hallawa 2019-10-22 17:42:17 PDT
Created attachment 381638 [details]
Patch
Comment 2 Simon Fraser (smfr) 2019-10-23 13:07:57 PDT
Comment on attachment 381638 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=381638&action=review

> Source/WebCore/svg/SVGSVGElement.cpp:266
> +    element.document().updateLayoutIgnorePendingStylesheets();

You can't call updateLayoutIgnorePendingStylesheets() and guarantee that the element is still valid. This function should keep a Ref<SVGElement> around.

> Source/WebCore/svg/SVGSVGElement.cpp:272
> +    element.document().updateLayoutIgnorePendingStylesheets();

Ditto.
Comment 3 Said Abou-Hallawa 2019-10-23 17:56:41 PDT
Created attachment 381758 [details]
Patch
Comment 4 WebKit Commit Bot 2019-10-23 20:43:06 PDT
Comment on attachment 381758 [details]
Patch

Clearing flags on attachment: 381758

Committed r251527: <https://trac.webkit.org/changeset/251527>
Comment 5 WebKit Commit Bot 2019-10-23 20:43:08 PDT
All reviewed patches have been landed.  Closing bug.
Comment 6 Radar WebKit Bug Importer 2019-10-23 20:44:14 PDT
<rdar://problem/56566735>