Title: [135747] branches/chromium/1312/Source/WebCore/dom/Document.cpp
- Revision
- 135747
- Author
- [email protected]
- Date
- 2012-11-26 11:42:13 -0800 (Mon, 26 Nov 2012)
Log Message
Merge 135709 - Circular reference between Document and MediaQueryMatcher.
https://bugs.webkit.org/show_bug.cgi?id=103242
Patch by Marja Hölttä <[email protected]> on 2012-11-26
Reviewed by Kenneth Rohde Christiansen.
It's not enough to clean up listeners in MediaQueryMatcher in ~Document,
since MediaQueryListListener keeps the Document alive. This caused
www.crbug.com/113983.
No new tests: No visible change in behavior (except that it doesn't leak memory).
* dom/Document.cpp:
(WebCore::Document::~Document):
(WebCore::Document::detach):
[email protected]
Review URL: https://codereview.chromium.org/11415134
Modified Paths
Diff
Modified: branches/chromium/1312/Source/WebCore/dom/Document.cpp (135746 => 135747)
--- branches/chromium/1312/Source/WebCore/dom/Document.cpp 2012-11-26 19:37:45 UTC (rev 135746)
+++ branches/chromium/1312/Source/WebCore/dom/Document.cpp 2012-11-26 19:42:13 UTC (rev 135747)
@@ -656,9 +656,6 @@
m_weakReference->clear();
- if (m_mediaQueryMatcher)
- m_mediaQueryMatcher->documentDestroyed();
-
clearStyleResolver(); // We need to destory CSSFontSelector before destroying m_cachedResourceLoader.
// It's possible for multiple Documents to end up referencing the same CachedResourceLoader (e.g., SVGImages
@@ -2151,6 +2148,9 @@
// callers of Document::detach().
m_frame = 0;
m_renderArena.clear();
+
+ if (m_mediaQueryMatcher)
+ m_mediaQueryMatcher->documentDestroyed();
}
void Document::prepareForDestruction()
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes