Title: [107346] trunk/Source/WebCore
Revision
107346
Author
[email protected]
Date
2012-02-09 19:34:21 -0800 (Thu, 09 Feb 2012)

Log Message

CachedResourceLoader is destroyed before CSSFontSelector is destroyed
https://bugs.webkit.org/show_bug.cgi?id=77817

Reviewed by Adam Barth.

Explicitly clear style selector before destorying the cached resource loader.

No new tests but PerformanceTests/Parser/html5-full-render.html was crashing
on performance bots due to this bug.

* dom/Document.cpp:
(WebCore::Document::~Document):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (107345 => 107346)


--- trunk/Source/WebCore/ChangeLog	2012-02-10 03:14:34 UTC (rev 107345)
+++ trunk/Source/WebCore/ChangeLog	2012-02-10 03:34:21 UTC (rev 107346)
@@ -1,3 +1,18 @@
+2012-02-09  Ryosuke Niwa  <[email protected]>
+
+        CachedResourceLoader is destroyed before CSSFontSelector is destroyed
+        https://bugs.webkit.org/show_bug.cgi?id=77817
+
+        Reviewed by Adam Barth.
+
+        Explicitly clear style selector before destorying the cached resource loader.
+
+        No new tests but PerformanceTests/Parser/html5-full-render.html was crashing
+        on performance bots due to this bug.
+
+        * dom/Document.cpp:
+        (WebCore::Document::~Document):
+
 2012-02-09  Anders Carlsson  <[email protected]>
 
         Update the scroll layer position on the main thread when we have slow repaint objects

Modified: trunk/Source/WebCore/dom/Document.cpp (107345 => 107346)


--- trunk/Source/WebCore/dom/Document.cpp	2012-02-10 03:14:34 UTC (rev 107345)
+++ trunk/Source/WebCore/dom/Document.cpp	2012-02-10 03:34:21 UTC (rev 107346)
@@ -545,7 +545,6 @@
     ASSERT(!m_parser || m_parser->refCount() == 1);
     detachParser();
     m_document = 0;
-    m_cachedResourceLoader.clear();
 
     m_renderArena.clear();
 
@@ -578,6 +577,9 @@
     if (m_mediaQueryMatcher)
         m_mediaQueryMatcher->documentDestroyed();
 
+    clearStyleSelector(); // We need to destory CSSFontSelector before destroying m_cachedResourceLoader.
+    m_cachedResourceLoader.clear();
+
     // We must call clearRareData() here since a Document class inherits TreeScope
     // as well as Node. See a comment on TreeScope.h for the reason.
     if (hasRareData())
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to