Title: [228387] trunk/Source/WebCore
Revision
228387
Author
za...@apple.com
Date
2018-02-12 12:12:35 -0800 (Mon, 12 Feb 2018)

Log Message

[RenderTreeBuilder] Remove redundant RenderTreeBuilder instance
https://bugs.webkit.org/show_bug.cgi?id=182700
<rdar://problem/37463958>

Reviewed by Antti Koivisto.

* rendering/RenderView.cpp:
(WebCore::RenderView::willBeDestroyed):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (228386 => 228387)


--- trunk/Source/WebCore/ChangeLog	2018-02-12 19:52:00 UTC (rev 228386)
+++ trunk/Source/WebCore/ChangeLog	2018-02-12 20:12:35 UTC (rev 228387)
@@ -1,3 +1,14 @@
+2018-02-12  Zalan Bujtas  <za...@apple.com>
+
+        [RenderTreeBuilder] Remove redundant RenderTreeBuilder instance
+        https://bugs.webkit.org/show_bug.cgi?id=182700
+        <rdar://problem/37463958>
+
+        Reviewed by Antti Koivisto.
+
+        * rendering/RenderView.cpp:
+        (WebCore::RenderView::willBeDestroyed):
+
 2018-02-12  Chris Fleizach  <cfleiz...@apple.com>
 
         AX: defer focusedUIElement notifications

Modified: trunk/Source/WebCore/dom/Document.cpp (228386 => 228387)


--- trunk/Source/WebCore/dom/Document.cpp	2018-02-12 19:52:00 UTC (rev 228386)
+++ trunk/Source/WebCore/dom/Document.cpp	2018-02-12 20:12:35 UTC (rev 228387)
@@ -2315,7 +2315,10 @@
     unscheduleStyleRecalc();
 
     // FIXME: RenderObject::view() uses m_renderView and we can't null it before destruction is completed
-    m_renderView->destroy();
+    {
+        RenderTreeBuilder builder(*m_renderView);
+        m_renderView->destroy();
+    }
     m_renderView.release();
 
     Node::setRenderer(nullptr);

Modified: trunk/Source/WebCore/rendering/RenderView.cpp (228386 => 228387)


--- trunk/Source/WebCore/rendering/RenderView.cpp	2018-02-12 19:52:00 UTC (rev 228386)
+++ trunk/Source/WebCore/rendering/RenderView.cpp	2018-02-12 20:12:35 UTC (rev 228387)
@@ -615,11 +615,8 @@
 {
     RenderBlockFlow::willBeDestroyed(builder);
     // FIXME: This is a workaround for leftover content (see webkit.org/b/182547).
-    if (firstChild()) {
-        RenderTreeBuilder builder(*this);
-        while (firstChild())
-            removeAndDestroyChild(builder, *firstChild());
-    }
+    while (firstChild())
+        removeAndDestroyChild(builder, *firstChild());
 
     ASSERT_WITH_MESSAGE(m_rendererCount == 1, "All other renderers in this render tree should have been destroyed");
 }
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to