Title: [228737] releases/WebKitGTK/webkit-2.20/Source/WebCore
Revision
228737
Author
carlo...@webkit.org
Date
2018-02-19 23:26:56 -0800 (Mon, 19 Feb 2018)

Log Message

Merge r228400 - [RenderTreeBuilder] Introduce RenderTreebuilder::takeChild
https://bugs.webkit.org/show_bug.cgi?id=182707
<rdar://problem/37473433>

Reviewed by Antti Koivisto.

All takeChild calls should go through RenderTreeBuilder::takeChild from now on.
This patch also moves the Ruby related takeChild calls to RenderTreeBuilder.

No change in functionality.

* rendering/RenderButton.cpp:
(WebCore::RenderButton::takeChild):
* rendering/RenderElement.cpp:
(WebCore::RenderElement::removeAndDestroyChild):
* rendering/RenderFullScreen.cpp:
(WebCore::RenderFullScreen::wrapExistingRenderer):
(WebCore::RenderFullScreen::unwrapRenderer):
* rendering/RenderMenuList.cpp:
(RenderMenuList::takeChild):
* rendering/RenderRuby.cpp:
(WebCore::RenderRubyAsInline::takeChild): Deleted.
(WebCore::RenderRubyAsBlock::takeChild): Deleted.
* rendering/RenderRuby.h:
* rendering/RenderRubyRun.cpp:
(WebCore::RenderRubyRun::takeChild): Deleted.
* rendering/RenderRubyRun.h:
* rendering/updating/RenderTreeBuilder.cpp:
(WebCore::RenderTreeBuilder::takeChild):
(WebCore::RenderTreeBuilder::takeChildFromRenderRubyAsInline): Deleted.
(WebCore::RenderTreeBuilder::takeChildFromRenderRubyAsBlock): Deleted.
(WebCore::RenderTreeBuilder::takeChildFromRenderRubyRun): Deleted.
* rendering/updating/RenderTreeBuilder.h:
* rendering/updating/RenderTreeBuilderFirstLetter.cpp:
(WebCore::RenderTreeBuilder::FirstLetter::updateStyle):
* rendering/updating/RenderTreeBuilderList.cpp:
(WebCore::RenderTreeBuilder::List::updateItemMarker):
* rendering/updating/RenderTreeBuilderMultiColumn.cpp:
(WebCore::RenderTreeBuilder::MultiColumn::createFragmentedFlow):
(WebCore::RenderTreeBuilder::MultiColumn::destroyFragmentedFlow):
(WebCore::RenderTreeBuilder::MultiColumn::processPossibleSpannerDescendant):
* rendering/updating/RenderTreeBuilderRuby.cpp:
(WebCore::RenderTreeBuilder::Ruby::takeChild):
* rendering/updating/RenderTreeBuilderTable.cpp:
(WebCore::RenderTreeBuilder::Table::collapseAndDestroyAnonymousSiblingRows):

Modified Paths

Diff

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/ChangeLog (228736 => 228737)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/ChangeLog	2018-02-20 07:26:48 UTC (rev 228736)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/ChangeLog	2018-02-20 07:26:56 UTC (rev 228737)
@@ -1,5 +1,53 @@
 2018-02-12  Zalan Bujtas  <za...@apple.com>
 
+        [RenderTreeBuilder] Introduce RenderTreebuilder::takeChild
+        https://bugs.webkit.org/show_bug.cgi?id=182707
+        <rdar://problem/37473433>
+
+        Reviewed by Antti Koivisto.
+
+        All takeChild calls should go through RenderTreeBuilder::takeChild from now on.
+        This patch also moves the Ruby related takeChild calls to RenderTreeBuilder.
+
+        No change in functionality.
+
+        * rendering/RenderButton.cpp:
+        (WebCore::RenderButton::takeChild):
+        * rendering/RenderElement.cpp:
+        (WebCore::RenderElement::removeAndDestroyChild):
+        * rendering/RenderFullScreen.cpp:
+        (WebCore::RenderFullScreen::wrapExistingRenderer):
+        (WebCore::RenderFullScreen::unwrapRenderer):
+        * rendering/RenderMenuList.cpp:
+        (RenderMenuList::takeChild):
+        * rendering/RenderRuby.cpp:
+        (WebCore::RenderRubyAsInline::takeChild): Deleted.
+        (WebCore::RenderRubyAsBlock::takeChild): Deleted.
+        * rendering/RenderRuby.h:
+        * rendering/RenderRubyRun.cpp:
+        (WebCore::RenderRubyRun::takeChild): Deleted.
+        * rendering/RenderRubyRun.h:
+        * rendering/updating/RenderTreeBuilder.cpp:
+        (WebCore::RenderTreeBuilder::takeChild):
+        (WebCore::RenderTreeBuilder::takeChildFromRenderRubyAsInline): Deleted.
+        (WebCore::RenderTreeBuilder::takeChildFromRenderRubyAsBlock): Deleted.
+        (WebCore::RenderTreeBuilder::takeChildFromRenderRubyRun): Deleted.
+        * rendering/updating/RenderTreeBuilder.h:
+        * rendering/updating/RenderTreeBuilderFirstLetter.cpp:
+        (WebCore::RenderTreeBuilder::FirstLetter::updateStyle):
+        * rendering/updating/RenderTreeBuilderList.cpp:
+        (WebCore::RenderTreeBuilder::List::updateItemMarker):
+        * rendering/updating/RenderTreeBuilderMultiColumn.cpp:
+        (WebCore::RenderTreeBuilder::MultiColumn::createFragmentedFlow):
+        (WebCore::RenderTreeBuilder::MultiColumn::destroyFragmentedFlow):
+        (WebCore::RenderTreeBuilder::MultiColumn::processPossibleSpannerDescendant):
+        * rendering/updating/RenderTreeBuilderRuby.cpp:
+        (WebCore::RenderTreeBuilder::Ruby::takeChild):
+        * rendering/updating/RenderTreeBuilderTable.cpp:
+        (WebCore::RenderTreeBuilder::Table::collapseAndDestroyAnonymousSiblingRows):
+
+2018-02-12  Zalan Bujtas  <za...@apple.com>
+
         [RenderTreeBuilder] Move RenderBlock::dropAnonymousBoxChild to RenderTreeBuilder
         https://bugs.webkit.org/show_bug.cgi?id=182704
         <rdar://problem/37469469>

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderButton.cpp (228736 => 228737)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderButton.cpp	2018-02-20 07:26:48 UTC (rev 228736)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderButton.cpp	2018-02-20 07:26:56 UTC (rev 228737)
@@ -79,7 +79,7 @@
         ASSERT(&oldChild == m_inner || !m_inner);
         return RenderFlexibleBox::takeChild(builder, oldChild);
     }
-    return m_inner->takeChild(builder, oldChild);
+    return builder.takeChild(*m_inner, oldChild);
 }
     
 void RenderButton::updateAnonymousChildStyle(RenderStyle& childStyle) const

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderElement.cpp (228736 => 228737)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderElement.cpp	2018-02-20 07:26:48 UTC (rev 228736)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderElement.cpp	2018-02-20 07:26:56 UTC (rev 228737)
@@ -497,7 +497,7 @@
             child.removeAndDestroyChild(builder, firstChild);
         }
     }
-    auto toDestroy = takeChild(builder, oldChild);
+    auto toDestroy = builder.takeChild(*this, oldChild);
 }
 
 RenderObject* RenderElement::attachRendererInternal(RenderPtr<RenderObject> child, RenderObject* beforeChild)

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderFullScreen.cpp (228736 => 228737)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderFullScreen.cpp	2018-02-20 07:26:48 UTC (rev 228736)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderFullScreen.cpp	2018-02-20 07:26:56 UTC (rev 228737)
@@ -132,7 +132,7 @@
 
     builder.insertChild(parent, WTFMove(newFullscreenRenderer), &renderer);
 
-    auto toMove = parent.takeChild(builder, renderer);
+    auto toMove = builder.takeChild(parent, renderer);
 
     // Always just do a full layout to ensure that line boxes get deleted properly.
     // Because objects moved from |parent| to |fullscreenRenderer|, we want to
@@ -178,7 +178,7 @@
             // lying around on the child.
             if (is<RenderBox>(*child))
                 downcast<RenderBox>(*child).clearOverrideSize();
-            auto childToMove = child->parent()->takeChild(builder, *child);
+            auto childToMove = builder.takeChild(*child->parent(), *child);
             builder.insertChild(*parent(), WTFMove(childToMove), this);
             parent()->setNeedsLayoutAndPrefWidthsRecalc();
         }

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderMenuList.cpp (228736 => 228737)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderMenuList.cpp	2018-02-20 07:26:48 UTC (rev 228736)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderMenuList.cpp	2018-02-20 07:26:56 UTC (rev 228737)
@@ -176,7 +176,7 @@
 {
     if (!m_innerBlock || &oldChild == m_innerBlock)
         return RenderFlexibleBox::takeChild(builder, oldChild);
-    return m_innerBlock->takeChild(builder, oldChild);
+    return builder.takeChild(*m_innerBlock, oldChild);
 }
 
 void RenderMenuList::styleDidChange(StyleDifference diff, const RenderStyle* oldStyle)

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderRuby.cpp (228736 => 228737)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderRuby.cpp	2018-02-20 07:26:48 UTC (rev 228736)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderRuby.cpp	2018-02-20 07:26:56 UTC (rev 228737)
@@ -60,11 +60,6 @@
     propagateStyleToAnonymousChildren(PropagateToAllChildren);
 }
 
-RenderPtr<RenderObject> RenderRubyAsInline::takeChild(RenderTreeBuilder& builder, RenderObject& child)
-{
-    return builder.takeChildFromRenderRubyAsInline(*this, child);
-}
-
 //=== ruby as block object ===
 
 RenderRubyAsBlock::RenderRubyAsBlock(Element& element, RenderStyle&& style)
@@ -80,9 +75,4 @@
     propagateStyleToAnonymousChildren(PropagateToAllChildren);
 }
 
-RenderPtr<RenderObject> RenderRubyAsBlock::takeChild(RenderTreeBuilder& builder, RenderObject& child)
-{
-    return builder.takeChildFromRenderRubyAsBlock(*this, child);
-}
-
 } // namespace WebCore

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderRuby.h (228736 => 228737)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderRuby.h	2018-02-20 07:26:48 UTC (rev 228736)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderRuby.h	2018-02-20 07:26:56 UTC (rev 228737)
@@ -56,8 +56,6 @@
     RenderRubyAsInline(Element&, RenderStyle&&);
     virtual ~RenderRubyAsInline();
 
-    RenderPtr<RenderObject> takeChild(RenderTreeBuilder&, RenderObject& child) override;
-
 protected:
     void styleDidChange(StyleDifference, const RenderStyle* oldStyle) override;
 
@@ -76,8 +74,6 @@
 
     Element& element() const { return downcast<Element>(nodeForNonAnonymous()); }
 
-    RenderPtr<RenderObject> takeChild(RenderTreeBuilder&, RenderObject& child) override;
-
 protected:
     void styleDidChange(StyleDifference, const RenderStyle* oldStyle) override;
 

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderRubyRun.cpp (228736 => 228737)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderRubyRun.cpp	2018-02-20 07:26:48 UTC (rev 228736)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderRubyRun.cpp	2018-02-20 07:26:56 UTC (rev 228737)
@@ -97,11 +97,6 @@
     return child.isInline() || child.isRubyText();
 }
 
-RenderPtr<RenderObject> RenderRubyRun::takeChild(RenderTreeBuilder& builder, RenderObject& child)
-{
-    return builder.takeChildFromRenderRubyRun(*this, child);
-}
-
 RenderPtr<RenderRubyBase> RenderRubyRun::createRubyBase() const
 {
     auto newStyle = RenderStyle::createAnonymousStyleWithDisplay(style(), BLOCK);

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderRubyRun.h (228736 => 228737)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderRubyRun.h	2018-02-20 07:26:48 UTC (rev 228736)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderRubyRun.h	2018-02-20 07:26:56 UTC (rev 228737)
@@ -56,7 +56,6 @@
     void layoutBlock(bool relayoutChildren, LayoutUnit pageHeight = 0) override;
 
     bool isChildAllowed(const RenderObject&, const RenderStyle&) const override;
-    RenderPtr<RenderObject> takeChild(RenderTreeBuilder&, RenderObject&) override;
 
     RenderBlock* firstLineBlock() const override;
 

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilder.cpp (228736 => 228737)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilder.cpp	2018-02-20 07:26:48 UTC (rev 228736)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilder.cpp	2018-02-20 07:26:56 UTC (rev 228737)
@@ -187,6 +187,20 @@
     parent.addChild(*this, WTFMove(child), beforeChild);
 }
 
+RenderPtr<RenderObject> RenderTreeBuilder::takeChild(RenderElement& parent, RenderObject& child)
+{
+    if (is<RenderRubyAsInline>(parent))
+        return rubyBuilder().takeChild(downcast<RenderRubyAsInline>(parent), child);
+
+    if (is<RenderRubyAsBlock>(parent))
+        return rubyBuilder().takeChild(downcast<RenderRubyAsBlock>(parent), child);
+
+    if (is<RenderRubyRun>(parent))
+        return rubyBuilder().takeChild(downcast<RenderRubyRun>(parent), child);
+
+    return parent.takeChild(*this, child);
+}
+
 void RenderTreeBuilder::insertChild(RenderTreePosition& position, RenderPtr<RenderObject> child)
 {
     insertChild(position.parent(), WTFMove(child), position.nextSibling());
@@ -476,21 +490,6 @@
     mathMLBuilder().insertChild(parent, WTFMove(child), beforeChild);
 }
 
-RenderPtr<RenderObject> RenderTreeBuilder::takeChildFromRenderRubyAsInline(RenderRubyAsInline& parent, RenderObject& child)
-{
-    return rubyBuilder().takeChild(parent, child);
-}
-
-RenderPtr<RenderObject> RenderTreeBuilder::takeChildFromRenderRubyAsBlock(RenderRubyAsBlock& parent, RenderObject& child)
-{
-    return rubyBuilder().takeChild(parent, child);
-}
-
-RenderPtr<RenderObject> RenderTreeBuilder::takeChildFromRenderRubyRun(RenderRubyRun& parent, RenderObject& child)
-{
-    return rubyBuilder().takeChild(parent, child);
-}
-
 RenderPtr<RenderObject> RenderTreeBuilder::takeChildFromRenderBlock(RenderBlock& parent, RenderObject& oldChild)
 {
     return blockBuilder().takeChild(parent, oldChild);

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilder.h (228736 => 228737)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilder.h	2018-02-20 07:26:48 UTC (rev 228736)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilder.h	2018-02-20 07:26:56 UTC (rev 228737)
@@ -51,6 +51,8 @@
     void insertChild(RenderElement& parent, RenderPtr<RenderObject>, RenderObject* beforeChild = nullptr);
     void insertChild(RenderTreePosition&, RenderPtr<RenderObject>);
 
+    RenderPtr<RenderObject> takeChild(RenderElement&, RenderObject&) WARN_UNUSED_RETURN;
+
     void updateAfterDescendants(RenderElement&);
 
     // This avoids having to convert all sites that need RenderTreeBuilder in one go.
@@ -73,9 +75,6 @@
     void insertChildToRenderTableRow(RenderTableRow& parent, RenderPtr<RenderObject> child, RenderObject* beforeChild = nullptr);
     void insertChildToRenderMathMLFenced(RenderMathMLFenced& parent, RenderPtr<RenderObject> child, RenderObject* beforeChild = nullptr);
 
-    RenderPtr<RenderObject> takeChildFromRenderRubyAsInline(RenderRubyAsInline& parent, RenderObject& child);
-    RenderPtr<RenderObject> takeChildFromRenderRubyAsBlock(RenderRubyAsBlock& parent, RenderObject& child);
-    RenderPtr<RenderObject> takeChildFromRenderRubyRun(RenderRubyRun& parent, RenderObject& child);
     RenderPtr<RenderObject> takeChildFromRenderBlock(RenderBlock& parent, RenderObject& oldChild);
 
     bool childRequiresTable(const RenderElement& parent, const RenderObject& child);

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderFirstLetter.cpp (228736 => 228737)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderFirstLetter.cpp	2018-02-20 07:26:48 UTC (rev 228736)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderFirstLetter.cpp	2018-02-20 07:26:56 UTC (rev 228737)
@@ -174,7 +174,7 @@
         while (RenderObject* child = firstLetter->firstChild()) {
             if (is<RenderText>(*child))
                 downcast<RenderText>(*child).removeAndDestroyTextBoxes();
-            auto toMove = firstLetter->takeChild(m_builder, *child);
+            auto toMove = m_builder.takeChild(*firstLetter, *child);
             m_builder.insertChild(*newFirstLetter, WTFMove(toMove));
         }
 

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderList.cpp (228736 => 228737)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderList.cpp	2018-02-20 07:26:48 UTC (rev 228736)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderList.cpp	2018-02-20 07:26:56 UTC (rev 228737)
@@ -115,7 +115,7 @@
         return;
 
     if (currentParent)
-        m_builder.insertChild(*newParent, currentParent->takeChild(m_builder, *markerRenderer), firstNonMarkerChild(*newParent));
+        m_builder.insertChild(*newParent, m_builder.takeChild(*currentParent, *markerRenderer), firstNonMarkerChild(*newParent));
     else
         m_builder.insertChild(*newParent, WTFMove(newMarkerRenderer), firstNonMarkerChild(*newParent));
 

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderMultiColumn.cpp (228736 => 228737)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderMultiColumn.cpp	2018-02-20 07:26:48 UTC (rev 228736)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderMultiColumn.cpp	2018-02-20 07:26:56 UTC (rev 228737)
@@ -160,7 +160,7 @@
             // Move the spanner back to its original position.
             auto& spannerOriginalParent = *placeholder->parent();
             // Detaching the spanner takes care of removing the placeholder (and merges the RenderMultiColumnSets).
-            auto spannerToReInsert = spanner->parent()->takeChild(m_builder, *spanner);
+            auto spannerToReInsert = m_builder.takeChild(*spanner->parent(), *spanner);
             m_builder.insertChild(spannerOriginalParent, WTFMove(spannerToReInsert));
         }
     }
@@ -208,7 +208,7 @@
             spannerOriginalParent = &flow;
         // Detaching the spanner takes care of removing the placeholder (and merges the RenderMultiColumnSets).
         auto* spanner = placeholder->spanner();
-        parentAndSpannerList.append(std::make_pair(spannerOriginalParent, spanner->parent()->takeChild(m_builder, *spanner)));
+        parentAndSpannerList.append(std::make_pair(spannerOriginalParent, m_builder.takeChild(*spanner->parent(), *spanner)));
     }
     while (auto* columnSet = multiColumnFlow.firstMultiColumnSet())
         columnSet->removeFromParentAndDestroy(m_builder);
@@ -313,7 +313,7 @@
         auto newPlaceholder = RenderMultiColumnSpannerPlaceholder::createAnonymous(flow, downcast<RenderBox>(descendant), container->style());
         auto& placeholder = *newPlaceholder;
         m_builder.insertChild(*container, WTFMove(newPlaceholder), descendant.nextSibling());
-        auto takenDescendant = container->takeChild(m_builder, descendant);
+        auto takenDescendant = m_builder.takeChild(*container, descendant);
 
         // This is a guard to stop an ancestor flow thread from processing the spanner.
         gShiftingSpanner = true;

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderRuby.cpp (228736 => 228737)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderRuby.cpp	2018-02-20 07:26:48 UTC (rev 228736)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderRuby.cpp	2018-02-20 07:26:56 UTC (rev 228737)
@@ -387,13 +387,13 @@
     if (isAnonymousRubyInlineBlock(child.parent())) {
         ASSERT(child.isBeforeContent() || child.isAfterContent());
         auto& parent = *child.parent();
-        auto takenChild = parent.takeChild(m_builder, child);
+        auto takenChild = m_builder.takeChild(parent, child);
         parent.removeFromParentAndDestroy(m_builder);
         return takenChild;
     }
 
     // Otherwise find the containing run and remove it from there.
-    return findRubyRunParent(child).takeChild(m_builder, child);
+    return m_builder.takeChild(findRubyRunParent(child), child);
 }
 
 RenderPtr<RenderObject> RenderTreeBuilder::Ruby::takeChild(RenderRubyAsBlock& parent, RenderObject& child)
@@ -411,13 +411,13 @@
     if (isAnonymousRubyInlineBlock(child.parent())) {
         ASSERT(child.isBeforeContent() || child.isAfterContent());
         auto& parent = *child.parent();
-        auto takenChild = parent.takeChild(m_builder, child);
+        auto takenChild = m_builder.takeChild(parent, child);
         parent.removeFromParentAndDestroy(m_builder);
         return takenChild;
     }
 
     // Otherwise find the containing run and remove it from there.
-    return findRubyRunParent(child).takeChild(m_builder, child);
+    return m_builder.takeChild(findRubyRunParent(child), child);
 }
 
 RenderPtr<RenderObject> RenderTreeBuilder::Ruby::takeChild(RenderRubyRun& parent, RenderObject& child)

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderTable.cpp (228736 => 228737)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderTable.cpp	2018-02-20 07:26:48 UTC (rev 228736)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderTable.cpp	2018-02-20 07:26:56 UTC (rev 228737)
@@ -236,7 +236,7 @@
             continue;
         }
         currentRow->moveAllChildrenTo(m_builder, rowToInsertInto, RenderBoxModelObject::NormalizeAfterInsertion::No);
-        auto toDestroy = section->takeChild(m_builder, *currentRow);
+        auto toDestroy = m_builder.takeChild(*section, *currentRow);
         currentRow = currentRow->nextRow();
     }
     if (rowToInsertInto)
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to