[Webkit-unassigned] [Bug 184670] New: Make all the items of the SVG tear-off properties list be RefCounted objects

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Apr 16 15:21:47 PDT 2018


https://bugs.webkit.org/show_bug.cgi?id=184670

            Bug ID: 184670
           Summary: Make all the items of the SVG tear-off properties list
                    be RefCounted objects
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: SVG
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: sabouhallawa at apple.com
                CC: zimmermann at kde.org

This work is a step towards https://bugs.webkit.org/show_bug.cgi?id=168586.

1. A new class, named SVGValue, will be added. This class is RefCounted. It is also a variant of the all the types of the list elements.
2. A new template class, named SVGValueList will be added. This class is derived from Vector<RefPtr<SVGValue>>. It provides easy access to the underlaying data members. It handles the copy assignment such that the underlaying data members are copied not referenced.
3. All the list properties classes will be derived form SVGValueList. For example SVGNumberListValues will be derived from SVGValueList<float>.
4. When an item is added to the values of a tear-off object, a new RefPtr<SVGValue> is created to hold the new data.
5. When an item of the values of a tear-off object is referenced by a wrapper, the reference of the underlaying data member is obtained form the RefPtr<SVGValue>.

The patch of this bug will add the overhead of saving all the data of the list properties as RefCounted objects. It will not make the code more secure. All the raw references and raw pointers from the values to the wrappers will remain the same. But it will make changing all SVG attributes to be RefCounted a lot easier.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20180416/46c2954c/attachment-0001.html>


More information about the webkit-unassigned mailing list