RESOLVED FIXED 284125
AX: For every clearChildren-addChildren cycle, we create new AccessibilityImageMapLink instances and never clean them up, causing a memory leak
https://bugs.webkit.org/show_bug.cgi?id=284125
Summary AX: For every clearChildren-addChildren cycle, we create new AccessibilityIma...
Tyler Wilcock
Reported 2024-12-05 13:46:16 PST
This happens because AccessibilityImageMapLink subclasses AccessibilityMockObject. This class _should_ subclass AccessibilityNodeObject, which would inherently ensure we only ever create one instance per area element, and clean it up when the area element is destroyed. The reason this was made to be an AccessibilityMockObject is because area elements do not generate renderers, which was troublesome considering we used to build the accessibility tree by walking the render tree. However, after https://bugs.webkit.org/show_bug.cgi?id=281749, we walk the DOM to build the accessibility tree, so this is now easily solvable.
Attachments
Radar WebKit Bug Importer
Comment 1 2024-12-05 16:19:30 PST
Tyler Wilcock
Comment 2 2025-04-01 13:58:34 PDT
EWS
Comment 3 2025-04-04 15:23:30 PDT
Committed 293278@main (eed31338f551): <https://commits.webkit.org/293278@main> Reviewed commits have been landed. Closing PR #43403 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.