[Webkit-unassigned] [Bug 217078] New: Form with Input causes memory leak

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Sep 28 21:49:58 PDT 2020


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

            Bug ID: 217078
           Summary: Form with Input causes memory leak
           Product: WebKit
           Version: Safari 14
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: DOM
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: clark.y.pan at gmail.com

Created attachment 409963

  --> https://bugs.webkit.org/attachment.cgi?id=409963&action=review

Test file to reproduce form and input element leak

When a form with an input inside of it is detached and dereferenced, the memory associated with the form is not GC'ed

Steps to reproduce:

- Open provided example file in Safari (Desktop). (tested in Version 14.0 (15610.1.28.1.9, 15610), no extensions)
- Open up Web Inspector -> Timelines -> Javascript Allocations.
- Take a snapshot.
- Click 'Click to add form' button a few times (mounts and unmounts a form and an input).
- Take a snapshot.
- Compare snapshots.

Expected
- No leaked memory

Actual
- The HTMLFormElement and HTMLInputElements are leaked.

Notes:
- Does not happen on iOS Safari with same webkit versions.
- If its a stand alone <input> without a wrapping <form>, the same behaviour does not occur.
- If there is no <input> inside the <form>, the HTMLFormElement is not leaked.
- Looking at the path to root object within the snapshot inspector for the HTMLFormElement shows either:
a) "This object is a root"
b) A retaining path from an object via a property called "_controlUniqueIDToControlMap"

-- 
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/20200929/ddb710a2/attachment-0001.htm>


More information about the webkit-unassigned mailing list