Open Bug 820228 Opened 12 years ago Updated 2 years ago

memory leakage in mochitest while firing touch start event without a corresponding touch end event

Categories

(Core :: General, defect)

x86_64
Linux
defect

Tracking

()

People

(Reporter: schien, Unassigned)

Details

(Whiteboard: [MemShrink:P3])

Attachments

(2 files)

In mochitest, firing a touch start event using |synthsizeTouch| will cause memory leakage. Firing a corresponding touch end event will make this memory leakage disappear.
Whiteboard: [MemShrink]
Assignee: nobody → continuation
Whiteboard: [MemShrink] → [MemShrink:P1]
According to the CC log, this is being kept alive by an anonymous div with a missing reference:

0x12b23ca80 [FragmentOrElement (xhtml) div class='anonymous-div' ...]
    --[mAttrsAndChildren[i]]-> 0x12b23cb00 [nsGenericDOMDataNode]
    --[mNodeInfo]-> 0x1260a0098 [nsNodeInfo ([none]) #text]
    --[mOwnerManager]-> 0x11f0a4d40 [nsNodeInfoManager]
    --[mDocument]-> 0x11f0f1000 [nsDocument normal (xhtml) ...]
    --[mChildren[i]]-> 0x1299ecf80 [FragmentOrElement (xhtml) html ...]
    --[mAttrsAndChildren[i]]-> 0x129c54af0 [FragmentOrElement (xhtml) body ]
    --[mAttrsAndChildren[i]]-> 0x128b77d70 [FragmentOrElement (xhtml) a ...]
    --[[via hash] mListenerManager]-> 0x128ba0700 [nsEventListenerManager]
    --[mListeners[i]]-> 0x12b502c40 [nsJSEventListener handlerName=onclick]
    --[mHandler.Ptr()]-> 0x12b2f6d80 [CallbackFunction]
    --[mCallable]-> 0x1194909c0 [JS Object (Function - partial/<)]
    --[fun_callscope]-> 0x119490980 [JS Object (Call)]
    --[parent, **UNKNOWN SLOT 0**]-> 0x11944f060 [JS Object (Window)]
    --[xpc_GetJSPrivate(obj)]-> 0x11f92cf90 [XPCWrappedNative (Window)]
    --[mIdentity]-> 0x129632888 [nsGlobalWindow #12]

    Root 0x12b23ca80 is a ref counted object with 1 unknown edge(s).
    known edges:
       0x12b23cb00 [nsGenericDOMDataNode] --[GetParent()]-> 0x12b23ca80


where ... is http://mochi.test:8888/tests/browser/base/content/test/touchleak.html?autorun=1&closeWhenDone=1&logFile=%2FUsers%2Famccreight%2Fmz%2Fcent%2Fobj-dbg%2Fmochitest-plain.log&fileLevel=INFO&consoleLevel=INFO&failureFile=/Users/amccreight/mz/cent/obj-dbg/_tests/testing/mochitest/makefailures.json
I don't think this is too serious issue. We keep touches alive in presshell, but evict the old
touches ones we get the start of a new touch session.
Tests using DOMWindowUtils may do something hacky, like not dispatch touchend.
Olli, do you think this is WONTFIX then?
This should be fixed, but isn't anything critical, as far as I see.
Okay, we can retriage this at our next MemShrink meeting.
Assignee: continuation → nobody
Whiteboard: [MemShrink:P1] → [MemShrink]
Whiteboard: [MemShrink] → [MemShrink:P3]
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: