Created attachment 88541 [details] testcase <rdar://problem/9187856> REGRESSION(r75555): ~5-7 MB increase in memory between iBench runs When navigating away from a page in a scrolled state the scrollbars are reset which fires a scroll event. WIth the new EventQueue for scroll events the event is never dispatched before the page detaches and keeps the Document alive. Solution is to cancel the scroll event when detaching the page. To repro: Load attached testcase Scroll navigate to about:blank close the window.
Created attachment 88542 [details] patch
Comment on attachment 88542 [details] patch I don’t understand this patch. It adds two new functions, but nobody calls the Document function.
the call to to cancelEnqueuedEvents is in Document::detach. It would be more concise I suppose to just call the QueueEvent function from there and not add a function to Document.
Comment on attachment 88542 [details] patch View in context: https://bugs.webkit.org/attachment.cgi?id=88542&action=review > Source/WebCore/dom/Document.cpp:3553 > +void Document::cancelEnqueuedEvents() > +{ > + m_eventQueue->cancelEnqueuedEvents(); > +} I suggest just doing this in Document::detach instead of adding a function for it.
committed http://trac.webkit.org/changeset/83128
http://trac.webkit.org/changeset/83128 might have broken SnowLeopard Intel Release (Tests) The following tests are not passing: fast/dom/52776.html fast/text/complex-text-opacity.html fast/text/international/bidi-AN-after-L.html fast/text/international/bidi-AN-after-empty-run.html fast/text/international/bidi-CS-after-AN.html fast/text/international/bidi-mirror-he-ar.html fast/text/international/bidi-neutral-run.html platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment.html