Changeset 228686 in webkit


Ignore:
Timestamp:
Feb 19, 2018 8:06:10 AM (6 years ago)
Author:
Carlos Garcia Campos
Message:

Merge r228337 - [RenderTreeBuilder] Introduce RenderTreeBuilder to willBeDestoryed/removeFromParentAndDestroy
https://bugs.webkit.org/show_bug.cgi?id=182635
<rdar://problem/37377489>

Reviewed by Antti Koivisto.

This patch helps finding callsites where we don't have a RenderTreeBuilder instance.

No change in functionality.

  • dom/Document.cpp:

(WebCore::Document::setFullScreenRenderer):

  • dom/Document.h:
  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::willBeDestroyed):
(WebCore::RenderBlock::takeChild):

  • rendering/RenderBlock.h:
  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::willBeDestroyed):

  • rendering/RenderBlockFlow.h:
  • rendering/RenderBox.cpp:

(WebCore::RenderBox::willBeDestroyed):

  • rendering/RenderBox.h:
  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::willBeDestroyed):
(WebCore::RenderBoxModelObject::removeAndDestroyAllContinuations):

  • rendering/RenderBoxModelObject.h:
  • rendering/RenderButton.cpp:

(WebCore::RenderButton::setText):

  • rendering/RenderCounter.cpp:

(WebCore::RenderCounter::willBeDestroyed):

  • rendering/RenderCounter.h:
  • rendering/RenderElement.cpp:

(WebCore::RenderElement::willBeDestroyed):

  • rendering/RenderElement.h:
  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::willBeDestroyed):

  • rendering/RenderEmbeddedObject.h:
  • rendering/RenderFragmentedFlow.cpp:

(WebCore::RenderFragmentedFlow::willBeDestroyed):

  • rendering/RenderFragmentedFlow.h:
  • rendering/RenderFullScreen.cpp:

(WebCore::RenderFullScreen::willBeDestroyed):
(WebCore::RenderFullScreen::wrapNewRenderer):
(WebCore::RenderFullScreen::wrapExistingRenderer):
(WebCore::RenderFullScreen::unwrapRenderer):

  • rendering/RenderFullScreen.h:
  • rendering/RenderImage.cpp:

(WebCore::RenderImage::willBeDestroyed):

  • rendering/RenderImage.h:
  • rendering/RenderInline.cpp:

(WebCore::RenderInline::willBeDestroyed):

  • rendering/RenderInline.h:
  • rendering/RenderLayerModelObject.cpp:

(WebCore::RenderLayerModelObject::willBeDestroyed):

  • rendering/RenderLayerModelObject.h:
  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::willBeDestroyed):

  • rendering/RenderListBox.h:
  • rendering/RenderListItem.cpp:

(WebCore::RenderListItem::willBeDestroyed):

  • rendering/RenderListItem.h:
  • rendering/RenderListMarker.cpp:

(WebCore::RenderListMarker::willBeDestroyed):

  • rendering/RenderListMarker.h:
  • rendering/RenderMenuList.cpp:

(WebCore::RenderMenuList::willBeDestroyed):

  • rendering/RenderMenuList.h:
  • rendering/RenderMultiColumnFlow.cpp:

(WebCore::RenderMultiColumnFlow::handleSpannerRemoval):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::removeFromParentAndDestroy):
(WebCore::RenderObject::willBeDestroyed):
(WebCore::RenderObject::destroy):

  • rendering/RenderObject.h:
  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::willBeDestroyed):

  • rendering/RenderReplaced.h:
  • rendering/RenderRuby.cpp:

(WebCore::RenderRubyAsInline::takeChild):
(WebCore::RenderRubyAsBlock::takeChild):

  • rendering/RenderSearchField.cpp:

(WebCore::RenderSearchField::willBeDestroyed):

  • rendering/RenderSearchField.h:
  • rendering/RenderSnapshottedPlugIn.cpp:

(WebCore::RenderSnapshottedPlugIn::willBeDestroyed):

  • rendering/RenderSnapshottedPlugIn.h:
  • rendering/RenderText.cpp:

(WebCore::RenderText::willBeDestroyed):

  • rendering/RenderText.h:
  • rendering/RenderTextControlMultiLine.cpp:

(WebCore::RenderTextControlMultiLine::willBeDestroyed):

  • rendering/RenderTextControlMultiLine.h:
  • rendering/RenderTextFragment.cpp:

(WebCore::RenderTextFragment::willBeDestroyed):
(WebCore::RenderTextFragment::setText):

  • rendering/RenderTextFragment.h:
  • rendering/RenderVideo.cpp:

(WebCore::RenderVideo::willBeDestroyed):

  • rendering/RenderVideo.h:
  • rendering/RenderView.cpp:

(WebCore::RenderView::willBeDestroyed):

  • rendering/RenderView.h:
  • rendering/RenderWidget.cpp:

(WebCore::RenderWidget::willBeDestroyed):

  • rendering/RenderWidget.h:
  • rendering/svg/RenderSVGBlock.cpp:

(WebCore::RenderSVGBlock::willBeDestroyed):

  • rendering/svg/RenderSVGBlock.h:
  • rendering/svg/RenderSVGImage.cpp:

(WebCore::RenderSVGImage::willBeDestroyed):

  • rendering/svg/RenderSVGImage.h:
  • rendering/svg/RenderSVGInline.cpp:

(WebCore::RenderSVGInline::willBeDestroyed):

  • rendering/svg/RenderSVGInline.h:
  • rendering/svg/RenderSVGModelObject.cpp:

(WebCore::RenderSVGModelObject::willBeDestroyed):

  • rendering/svg/RenderSVGModelObject.h:
  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::willBeDestroyed):

  • rendering/svg/RenderSVGResourceContainer.h:
  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::willBeDestroyed):

  • rendering/svg/RenderSVGRoot.h:
  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::willBeDestroyed):

  • rendering/svg/RenderSVGText.h:
  • rendering/updating/RenderTreeBuilder.cpp:

(WebCore::RenderTreeBuilder::removeFromParentAndDestroyCleaningUpAnonymousWrappers):

  • rendering/updating/RenderTreeBuilderList.cpp:

(WebCore::RenderTreeBuilder::List::updateItemMarker):

  • rendering/updating/RenderTreeBuilderMultiColumn.cpp:

(WebCore::RenderTreeBuilder::MultiColumn::destroyFragmentedFlow):

  • rendering/updating/RenderTreeBuilderRuby.cpp:

(WebCore::RenderTreeBuilder::Ruby::moveBlockChildren):

Location:
releases/WebKitGTK/webkit-2.20/Source/WebCore
Files:
75 edited

Legend:

Unmodified
Added
Removed
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/ChangeLog

    r228685 r228686  
     12018-02-09  Zalan Bujtas  <zalan@apple.com>
     2
     3        [RenderTreeBuilder] Introduce RenderTreeBuilder to willBeDestoryed/removeFromParentAndDestroy
     4        https://bugs.webkit.org/show_bug.cgi?id=182635
     5        <rdar://problem/37377489>
     6
     7        Reviewed by Antti Koivisto.
     8
     9        This patch helps finding callsites where we don't have a RenderTreeBuilder instance.
     10
     11        No change in functionality.
     12
     13        * dom/Document.cpp:
     14        (WebCore::Document::setFullScreenRenderer):
     15        * dom/Document.h:
     16        * rendering/RenderBlock.cpp:
     17        (WebCore::RenderBlock::willBeDestroyed):
     18        (WebCore::RenderBlock::takeChild):
     19        * rendering/RenderBlock.h:
     20        * rendering/RenderBlockFlow.cpp:
     21        (WebCore::RenderBlockFlow::willBeDestroyed):
     22        * rendering/RenderBlockFlow.h:
     23        * rendering/RenderBox.cpp:
     24        (WebCore::RenderBox::willBeDestroyed):
     25        * rendering/RenderBox.h:
     26        * rendering/RenderBoxModelObject.cpp:
     27        (WebCore::RenderBoxModelObject::willBeDestroyed):
     28        (WebCore::RenderBoxModelObject::removeAndDestroyAllContinuations):
     29        * rendering/RenderBoxModelObject.h:
     30        * rendering/RenderButton.cpp:
     31        (WebCore::RenderButton::setText):
     32        * rendering/RenderCounter.cpp:
     33        (WebCore::RenderCounter::willBeDestroyed):
     34        * rendering/RenderCounter.h:
     35        * rendering/RenderElement.cpp:
     36        (WebCore::RenderElement::willBeDestroyed):
     37        * rendering/RenderElement.h:
     38        * rendering/RenderEmbeddedObject.cpp:
     39        (WebCore::RenderEmbeddedObject::willBeDestroyed):
     40        * rendering/RenderEmbeddedObject.h:
     41        * rendering/RenderFragmentedFlow.cpp:
     42        (WebCore::RenderFragmentedFlow::willBeDestroyed):
     43        * rendering/RenderFragmentedFlow.h:
     44        * rendering/RenderFullScreen.cpp:
     45        (WebCore::RenderFullScreen::willBeDestroyed):
     46        (WebCore::RenderFullScreen::wrapNewRenderer):
     47        (WebCore::RenderFullScreen::wrapExistingRenderer):
     48        (WebCore::RenderFullScreen::unwrapRenderer):
     49        * rendering/RenderFullScreen.h:
     50        * rendering/RenderImage.cpp:
     51        (WebCore::RenderImage::willBeDestroyed):
     52        * rendering/RenderImage.h:
     53        * rendering/RenderInline.cpp:
     54        (WebCore::RenderInline::willBeDestroyed):
     55        * rendering/RenderInline.h:
     56        * rendering/RenderLayerModelObject.cpp:
     57        (WebCore::RenderLayerModelObject::willBeDestroyed):
     58        * rendering/RenderLayerModelObject.h:
     59        * rendering/RenderListBox.cpp:
     60        (WebCore::RenderListBox::willBeDestroyed):
     61        * rendering/RenderListBox.h:
     62        * rendering/RenderListItem.cpp:
     63        (WebCore::RenderListItem::willBeDestroyed):
     64        * rendering/RenderListItem.h:
     65        * rendering/RenderListMarker.cpp:
     66        (WebCore::RenderListMarker::willBeDestroyed):
     67        * rendering/RenderListMarker.h:
     68        * rendering/RenderMenuList.cpp:
     69        (WebCore::RenderMenuList::willBeDestroyed):
     70        * rendering/RenderMenuList.h:
     71        * rendering/RenderMultiColumnFlow.cpp:
     72        (WebCore::RenderMultiColumnFlow::handleSpannerRemoval):
     73        * rendering/RenderObject.cpp:
     74        (WebCore::RenderObject::removeFromParentAndDestroy):
     75        (WebCore::RenderObject::willBeDestroyed):
     76        (WebCore::RenderObject::destroy):
     77        * rendering/RenderObject.h:
     78        * rendering/RenderReplaced.cpp:
     79        (WebCore::RenderReplaced::willBeDestroyed):
     80        * rendering/RenderReplaced.h:
     81        * rendering/RenderRuby.cpp:
     82        (WebCore::RenderRubyAsInline::takeChild):
     83        (WebCore::RenderRubyAsBlock::takeChild):
     84        * rendering/RenderSearchField.cpp:
     85        (WebCore::RenderSearchField::willBeDestroyed):
     86        * rendering/RenderSearchField.h:
     87        * rendering/RenderSnapshottedPlugIn.cpp:
     88        (WebCore::RenderSnapshottedPlugIn::willBeDestroyed):
     89        * rendering/RenderSnapshottedPlugIn.h:
     90        * rendering/RenderText.cpp:
     91        (WebCore::RenderText::willBeDestroyed):
     92        * rendering/RenderText.h:
     93        * rendering/RenderTextControlMultiLine.cpp:
     94        (WebCore::RenderTextControlMultiLine::willBeDestroyed):
     95        * rendering/RenderTextControlMultiLine.h:
     96        * rendering/RenderTextFragment.cpp:
     97        (WebCore::RenderTextFragment::willBeDestroyed):
     98        (WebCore::RenderTextFragment::setText):
     99        * rendering/RenderTextFragment.h:
     100        * rendering/RenderVideo.cpp:
     101        (WebCore::RenderVideo::willBeDestroyed):
     102        * rendering/RenderVideo.h:
     103        * rendering/RenderView.cpp:
     104        (WebCore::RenderView::willBeDestroyed):
     105        * rendering/RenderView.h:
     106        * rendering/RenderWidget.cpp:
     107        (WebCore::RenderWidget::willBeDestroyed):
     108        * rendering/RenderWidget.h:
     109        * rendering/svg/RenderSVGBlock.cpp:
     110        (WebCore::RenderSVGBlock::willBeDestroyed):
     111        * rendering/svg/RenderSVGBlock.h:
     112        * rendering/svg/RenderSVGImage.cpp:
     113        (WebCore::RenderSVGImage::willBeDestroyed):
     114        * rendering/svg/RenderSVGImage.h:
     115        * rendering/svg/RenderSVGInline.cpp:
     116        (WebCore::RenderSVGInline::willBeDestroyed):
     117        * rendering/svg/RenderSVGInline.h:
     118        * rendering/svg/RenderSVGModelObject.cpp:
     119        (WebCore::RenderSVGModelObject::willBeDestroyed):
     120        * rendering/svg/RenderSVGModelObject.h:
     121        * rendering/svg/RenderSVGResourceContainer.cpp:
     122        (WebCore::RenderSVGResourceContainer::willBeDestroyed):
     123        * rendering/svg/RenderSVGResourceContainer.h:
     124        * rendering/svg/RenderSVGRoot.cpp:
     125        (WebCore::RenderSVGRoot::willBeDestroyed):
     126        * rendering/svg/RenderSVGRoot.h:
     127        * rendering/svg/RenderSVGText.cpp:
     128        (WebCore::RenderSVGText::willBeDestroyed):
     129        * rendering/svg/RenderSVGText.h:
     130        * rendering/updating/RenderTreeBuilder.cpp:
     131        (WebCore::RenderTreeBuilder::removeFromParentAndDestroyCleaningUpAnonymousWrappers):
     132        * rendering/updating/RenderTreeBuilderList.cpp:
     133        (WebCore::RenderTreeBuilder::List::updateItemMarker):
     134        * rendering/updating/RenderTreeBuilderMultiColumn.cpp:
     135        (WebCore::RenderTreeBuilder::MultiColumn::destroyFragmentedFlow):
     136        * rendering/updating/RenderTreeBuilderRuby.cpp:
     137        (WebCore::RenderTreeBuilder::Ruby::moveBlockChildren):
     138
    11392018-02-09  Zalan Bujtas  <zalan@apple.com>
    2140
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/dom/Document.cpp

    r228646 r228686  
    63026302}
    63036303
    6304 void Document::setFullScreenRenderer(RenderFullScreen* renderer)
     6304void Document::setFullScreenRenderer(RenderTreeBuilder& builder, RenderFullScreen* renderer)
    63056305{
    63066306    if (renderer == m_fullScreenRenderer)
     
    63176317
    63186318    if (m_fullScreenRenderer)
    6319         m_fullScreenRenderer->removeFromParentAndDestroy();
     6319        m_fullScreenRenderer->removeFromParentAndDestroy(builder);
    63206320    ASSERT(!m_fullScreenRenderer);
    63216321
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/dom/Document.h

    r228646 r228686  
    153153class Range;
    154154class RenderFullScreen;
     155class RenderTreeBuilder;
    155156class RenderView;
    156157class RequestAnimationFrameCallback;
     
    11311132    WEBCORE_EXPORT void webkitDidExitFullScreenForElement(Element*);
    11321133   
    1133     void setFullScreenRenderer(RenderFullScreen*);
     1134    void setFullScreenRenderer(RenderTreeBuilder&, RenderFullScreen*);
    11341135    RenderFullScreen* fullScreenRenderer() const { return m_fullScreenRenderer.get(); }
    11351136
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderBlock.cpp

    r228668 r228686  
    344344
    345345// Note that this is not called for RenderBlockFlows.
    346 void RenderBlock::willBeDestroyed()
     346void RenderBlock::willBeDestroyed(RenderTreeBuilder& builder)
    347347{
    348348    if (!renderTreeBeingDestroyed()) {
     
    353353    blockWillBeDestroyed();
    354354
    355     RenderBox::willBeDestroyed();
     355    RenderBox::willBeDestroyed(builder);
    356356}
    357357
     
    579579            // Delete the now-empty block's lines and nuke it.
    580580            nextBlock.deleteLines();
    581             nextBlock.removeFromParentAndDestroy();
     581            nextBlock.removeFromParentAndDestroy(builder);
    582582            next = nullptr;
    583583        }
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderBlock.h

    r228668 r228686  
    324324protected:
    325325    RenderFragmentedFlow* locateEnclosingFragmentedFlow() const override;
    326     void willBeDestroyed() override;
     326    void willBeDestroyed(RenderTreeBuilder&) override;
    327327
    328328    void layout() override;
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderBlockFlow.cpp

    r228685 r228686  
    128128}
    129129
    130 void RenderBlockFlow::willBeDestroyed()
     130void RenderBlockFlow::willBeDestroyed(RenderTreeBuilder& builder)
    131131{
    132132    if (!renderTreeBeingDestroyed()) {
     
    155155
    156156    // NOTE: This jumps down to RenderBox, bypassing RenderBlock since it would do duplicate work.
    157     RenderBox::willBeDestroyed();
     157    RenderBox::willBeDestroyed(builder);
    158158}
    159159
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderBlockFlow.h

    r228668 r228686  
    6060
    6161protected:
    62     void willBeDestroyed() override;
     62    void willBeDestroyed(RenderTreeBuilder&) override;
    6363   
    6464    // This method is called at the start of layout to wipe away all of the floats in our floating objects list. It also
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderBox.cpp

    r226666 r228686  
    151151}
    152152
    153 void RenderBox::willBeDestroyed()
     153void RenderBox::willBeDestroyed(RenderTreeBuilder& builder)
    154154{
    155155    if (frame().eventHandler().autoscrollRenderer() == this)
     
    171171#endif
    172172
    173     RenderBoxModelObject::willBeDestroyed();
     173    RenderBoxModelObject::willBeDestroyed(builder);
    174174}
    175175
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderBox.h

    r226516 r228686  
    632632    void updateFromStyle() override;
    633633
    634     void willBeDestroyed() override;
     634    void willBeDestroyed(RenderTreeBuilder&) override;
    635635
    636636    bool createsNewFormattingContext() const;
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderBoxModelObject.cpp

    r228668 r228686  
    238238}
    239239
    240 void RenderBoxModelObject::willBeDestroyed()
     240void RenderBoxModelObject::willBeDestroyed(RenderTreeBuilder& builder)
    241241{
    242242    if (continuation() && !isContinuation()) {
    243         removeAndDestroyAllContinuations();
     243        removeAndDestroyAllContinuations(builder);
    244244        ASSERT(!continuation());
    245245    }
     
    253253        view().imageQualityController().rendererWillBeDestroyed(*this);
    254254
    255     RenderLayerModelObject::willBeDestroyed();
     255    RenderLayerModelObject::willBeDestroyed(builder);
    256256}
    257257
     
    25522552}
    25532553
    2554 void RenderBoxModelObject::removeAndDestroyAllContinuations()
     2554void RenderBoxModelObject::removeAndDestroyAllContinuations(RenderTreeBuilder& builder)
    25552555{
    25562556    ASSERT(!isContinuation());
     
    25592559    auto& continuationChainNode = *continuationChainNodeMap().get(this);
    25602560    while (continuationChainNode.next)
    2561         continuationChainNode.next->renderer->removeFromParentAndDestroy();
     2561        continuationChainNode.next->renderer->removeFromParentAndDestroy(builder);
    25622562    removeFromContinuationChain();
    25632563}
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderBoxModelObject.h

    r228668 r228686  
    246246    RenderBoxModelObject(Document&, RenderStyle&&, BaseTypeFlags);
    247247
    248     void willBeDestroyed() override;
     248    void willBeDestroyed(RenderTreeBuilder&) override;
    249249
    250250    LayoutPoint adjustedPositionRelativeToOffsetParent(const LayoutPoint&) const;
     
    309309private:
    310310    ContinuationChainNode& ensureContinuationChainNode();
    311     void removeAndDestroyAllContinuations();
     311    void removeAndDestroyAllContinuations(RenderTreeBuilder&);
    312312
    313313    LayoutUnit computedCSSPadding(const Length&) const;
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderButton.cpp

    r227977 r228686  
    129129        return;
    130130    }
    131     m_buttonText->removeFromParentAndDestroy();
     131    if (RenderTreeBuilder::current())
     132        m_buttonText->removeFromParentAndDestroy(*RenderTreeBuilder::current());
     133    else {
     134        RenderTreeBuilder builder(*document().renderView());
     135        m_buttonText->removeFromParentAndDestroy(builder);
     136    }
    132137}
    133138
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderCounter.cpp

    r226675 r228686  
    353353}
    354354
    355 void RenderCounter::willBeDestroyed()
     355void RenderCounter::willBeDestroyed(RenderTreeBuilder& builder)
    356356{
    357357    view().removeRenderCounter();
     
    362362    }
    363363   
    364     RenderText::willBeDestroyed();
     364    RenderText::willBeDestroyed(builder);
    365365}
    366366
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderCounter.h

    r224537 r228686  
    4444
    4545private:
    46     void willBeDestroyed() override;
     46    void willBeDestroyed(RenderTreeBuilder&) override;
    4747   
    4848    const char* renderName() const override;
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderElement.cpp

    r228665 r228686  
    10511051}
    10521052
    1053 void RenderElement::willBeDestroyed()
     1053void RenderElement::willBeDestroyed(RenderTreeBuilder& builder)
    10541054{
    10551055    if (m_style.hasFixedBackgroundImage() && !settings().fixedBackgroundsPaintRelativeToDocument())
     
    10611061        RenderCounter::destroyCounterNodes(*this);
    10621062
    1063     RenderObject::willBeDestroyed();
     1063    RenderObject::willBeDestroyed(builder);
    10641064
    10651065    clearSubtreeLayoutRootIfNeeded();
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderElement.h

    r228665 r228686  
    261261    void insertedIntoTree() override;
    262262    void willBeRemovedFromTree() override;
    263     void willBeDestroyed() override;
     263    void willBeDestroyed(RenderTreeBuilder&) override;
    264264
    265265    void setRenderInlineAlwaysCreatesLineBoxes(bool b) { m_renderInlineAlwaysCreatesLineBoxes = b; }
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderEmbeddedObject.cpp

    r224546 r228686  
    114114}
    115115
    116 void RenderEmbeddedObject::willBeDestroyed()
     116void RenderEmbeddedObject::willBeDestroyed(RenderTreeBuilder& builder)
    117117{
    118118    view().frameView().removeEmbeddedObjectToUpdate(*this);
    119     RenderWidget::willBeDestroyed();
     119    RenderWidget::willBeDestroyed(builder);
    120120}
    121121
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderEmbeddedObject.h

    r224537 r228686  
    6767protected:
    6868    void layout() override;
    69     void willBeDestroyed() override;
     69    void willBeDestroyed(RenderTreeBuilder&) override;
    7070
    7171private:
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderFragmentedFlow.cpp

    r227673 r228686  
    764764}
    765765
    766 void RenderFragmentedFlow::willBeDestroyed()
     766void RenderFragmentedFlow::willBeDestroyed(RenderTreeBuilder& builder)
    767767{
    768768    clearLinesToFragmentMap();
    769     RenderBlockFlow::willBeDestroyed();
     769    RenderBlockFlow::willBeDestroyed(builder);
    770770}
    771771
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderFragmentedFlow.h

    r228685 r228686  
    195195   
    196196    void clearLinesToFragmentMap();
    197     void willBeDestroyed() override;
     197    void willBeDestroyed(RenderTreeBuilder&) override;
    198198
    199199    void mapLocalToContainer(const RenderLayerModelObject* repaintContainer, TransformState&, MapCoordinatesFlags, bool* wasFixed) const override;
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderFullScreen.cpp

    r227977 r228686  
    5959}
    6060
    61 void RenderFullScreen::willBeDestroyed()
     61void RenderFullScreen::willBeDestroyed(RenderTreeBuilder& builder)
    6262{
    6363    if (m_placeholder) {
    64         m_placeholder->removeFromParentAndDestroy();
     64        m_placeholder->removeFromParentAndDestroy(builder);
    6565        ASSERT(!m_placeholder);
    6666    }
    6767
    68     RenderFlexibleBox::willBeDestroyed();
     68    RenderFlexibleBox::willBeDestroyed(builder);
    6969}
    7070
     
    107107    fullscreenRenderer.setNeedsLayoutAndPrefWidthsRecalc();
    108108
    109     document.setFullScreenRenderer(&fullscreenRenderer);
     109    document.setFullScreenRenderer(builder, &fullscreenRenderer);
    110110
    111111    return newFullscreenRenderer;
     
    144144    fullscreenRenderer.setNeedsLayoutAndPrefWidthsRecalc();
    145145
    146     document.setFullScreenRenderer(&fullscreenRenderer);
     146    document.setFullScreenRenderer(builder, &fullscreenRenderer);
    147147}
    148148
     
    170170                    child = nonAnonymousChild;
    171171                else {
    172                     child->removeFromParentAndDestroy();
     172                    child->removeFromParentAndDestroy(builder);
    173173                    continue;
    174174                }
     
    185185    }
    186186    if (placeholder())
    187         placeholder()->removeFromParentAndDestroy();
     187        placeholder()->removeFromParentAndDestroy(builder);
    188188    ASSERT(!placeholder());
    189189
    190     removeFromParentAndDestroy();
     190    removeFromParentAndDestroy(builder);
    191191}
    192192
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderFullScreen.h

    r226007 r228686  
    4949private:
    5050    bool isRenderFullScreen() const override { return true; }
    51     void willBeDestroyed() override;
     51    void willBeDestroyed(RenderTreeBuilder&) override;
    5252    bool isFlexibleBoxImpl() const override { return true; }
    5353
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderImage.cpp

    r224546 r228686  
    150150}
    151151
    152 void RenderImage::willBeDestroyed()
     152void RenderImage::willBeDestroyed(RenderTreeBuilder& builder)
    153153{
    154154    imageResource().shutdown();
    155     RenderReplaced::willBeDestroyed();
     155    RenderReplaced::willBeDestroyed(builder);
    156156}
    157157
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderImage.h

    r224537 r228686  
    7878
    7979protected:
    80     void willBeDestroyed() override;
     80    void willBeDestroyed(RenderTreeBuilder&) override;
    8181
    8282    bool needsPreferredWidthsRecalculation() const final;
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderInline.cpp

    r227791 r228686  
    7171}
    7272
    73 void RenderInline::willBeDestroyed()
     73void RenderInline::willBeDestroyed(RenderTreeBuilder& builder)
    7474{
    7575#if !ASSERT_DISABLED
     
    108108    m_lineBoxes.deleteLineBoxes();
    109109
    110     RenderBoxModelObject::willBeDestroyed();
     110    RenderBoxModelObject::willBeDestroyed(builder);
    111111}
    112112
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderInline.h

    r227791 r228686  
    9898
    9999protected:
    100     void willBeDestroyed() override;
     100    void willBeDestroyed(RenderTreeBuilder&) override;
    101101
    102102    void styleWillChange(StyleDifference, const RenderStyle& newStyle) override;
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderLayerModelObject.cpp

    r227552 r228686  
    6666}
    6767
    68 void RenderLayerModelObject::willBeDestroyed()
     68void RenderLayerModelObject::willBeDestroyed(RenderTreeBuilder& builder)
    6969{
    7070    if (isPositioned()) {
     
    7878    }
    7979
    80     RenderElement::willBeDestroyed();
     80    RenderElement::willBeDestroyed(builder);
    8181   
    8282    clearRepaintLayoutRects();
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderLayerModelObject.h

    r224537 r228686  
    7474
    7575    void createLayer();
    76     void willBeDestroyed() override;
     76    void willBeDestroyed(RenderTreeBuilder&) override;
    7777
    7878private:
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderListBox.cpp

    r225117 r228686  
    105105}
    106106
    107 void RenderListBox::willBeDestroyed()
     107void RenderListBox::willBeDestroyed(RenderTreeBuilder& builder)
    108108{
    109109    setHasVerticalScrollbar(false);
    110110    view().frameView().removeScrollableArea(this);
    111     RenderBlockFlow::willBeDestroyed();
     111    RenderBlockFlow::willBeDestroyed(builder);
    112112}
    113113
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderListBox.h

    r224537 r228686  
    6969
    7070private:
    71     void willBeDestroyed() override;
     71    void willBeDestroyed(RenderTreeBuilder&) override;
    7272
    7373    void element() const = delete;
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderListItem.cpp

    r226675 r228686  
    5555}
    5656
    57 void RenderListItem::willBeDestroyed()
     57void RenderListItem::willBeDestroyed(RenderTreeBuilder& builder)
    5858{
    5959    if (m_marker)
    60         m_marker->removeFromParentAndDestroy();
    61     RenderBlockFlow::willBeDestroyed();
     60        m_marker->removeFromParentAndDestroy(builder);
     61    RenderBlockFlow::willBeDestroyed(builder);
    6262}
    6363
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderListItem.h

    r226675 r228686  
    6363
    6464private:
    65     void willBeDestroyed() final;
     65    void willBeDestroyed(RenderTreeBuilder&) final;
    6666
    6767    const char* renderName() const final { return "RenderListItem"; }
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderListMarker.cpp

    r224537 r228686  
    11351135}
    11361136
    1137 void RenderListMarker::willBeDestroyed()
     1137void RenderListMarker::willBeDestroyed(RenderTreeBuilder& builder)
    11381138{
    11391139    if (m_image)
    11401140        m_image->removeClient(this);
    1141     RenderBox::willBeDestroyed();
     1141    RenderBox::willBeDestroyed(builder);
    11421142}
    11431143
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderListMarker.h

    r224537 r228686  
    5353
    5454private:
    55     void willBeDestroyed() override;
     55    void willBeDestroyed(RenderTreeBuilder&) override;
    5656
    5757    void element() const = delete;
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderMenuList.cpp

    r227977 r228686  
    9090}
    9191
    92 void RenderMenuList::willBeDestroyed()
     92void RenderMenuList::willBeDestroyed(RenderTreeBuilder& builder)
    9393{
    9494#if !PLATFORM(IOS)
     
    9898#endif
    9999
    100     RenderFlexibleBox::willBeDestroyed();
     100    RenderFlexibleBox::willBeDestroyed(builder);
    101101}
    102102
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderMenuList.h

    r227977 r228686  
    6464
    6565private:
    66     void willBeDestroyed() override;
     66    void willBeDestroyed(RenderTreeBuilder&) override;
    6767
    6868    void element() const = delete;
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderObject.cpp

    r228682 r228686  
    256256}
    257257
    258 void RenderObject::removeFromParentAndDestroy()
     258void RenderObject::removeFromParentAndDestroy(RenderTreeBuilder& builder)
    259259{
    260260    ASSERT(m_parent);
    261     m_parent->removeAndDestroyChild(*RenderTreeBuilder::current(), *this);
     261    m_parent->removeAndDestroyChild(builder, *this);
    262262}
    263263
     
    14351435}
    14361436
    1437 void RenderObject::willBeDestroyed()
     1437void RenderObject::willBeDestroyed(RenderTreeBuilder&)
    14381438{
    14391439    ASSERT(!m_parent);
     
    14861486#endif
    14871487
    1488     willBeDestroyed();
     1488    willBeDestroyed(*RenderTreeBuilder::current());
    14891489
    14901490    if (is<RenderWidget>(*this)) {
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderObject.h

    r227928 r228686  
    6464class RenderFragmentContainer;
    6565class RenderTheme;
     66class RenderTreeBuilder;
    6667class SelectionRangeData;
    6768class TransformState;
     
    753754    virtual void imageChanged(WrappedImagePtr, const IntRect* = nullptr) { }
    754755
    755     void removeFromParentAndDestroy();
     756    void removeFromParentAndDestroy(RenderTreeBuilder&);
    756757
    757758    CSSAnimationController& animation() const;
     
    788789    void adjustRectForOutlineAndShadow(LayoutRect&) const;
    789790
    790     virtual void willBeDestroyed();
     791    virtual void willBeDestroyed(RenderTreeBuilder&);
    791792
    792793    virtual void insertedIntoTree();
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderReplaced.cpp

    r224537 r228686  
    7373RenderReplaced::~RenderReplaced() = default;
    7474
    75 void RenderReplaced::willBeDestroyed()
     75void RenderReplaced::willBeDestroyed(RenderTreeBuilder& builder)
    7676{
    7777    if (!renderTreeBeingDestroyed() && parent())
    7878        parent()->dirtyLinesFromChangedChild(*this);
    7979
    80     RenderBox::willBeDestroyed();
     80    RenderBox::willBeDestroyed(builder);
    8181}
    8282
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderReplaced.h

    r224537 r228686  
    6868    LayoutRect localSelectionRect(bool checkWhetherSelected = true) const; // This is in local coordinates, but it's a physical rect (so the top left corner is physical top left).
    6969
    70     void willBeDestroyed() override;
     70    void willBeDestroyed(RenderTreeBuilder&) override;
    7171
    7272private:
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderRuby.cpp

    r227977 r228686  
    110110        auto& parent = *child.parent();
    111111        auto takenChild = parent.takeChild(builder, child);
    112         parent.removeFromParentAndDestroy();
     112        parent.removeFromParentAndDestroy(builder);
    113113        return takenChild;
    114114    }
     
    149149        auto& parent = *child.parent();
    150150        auto takenChild = parent.takeChild(builder, child);
    151         parent.removeFromParentAndDestroy();
     151        parent.removeFromParentAndDestroy(builder);
    152152        return takenChild;
    153153    }
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderSearchField.cpp

    r226349 r228686  
    6565}
    6666
    67 void RenderSearchField::willBeDestroyed()
     67void RenderSearchField::willBeDestroyed(RenderTreeBuilder& builder)
    6868{
    6969    if (m_searchPopup) {
     
    7272    }
    7373
    74     RenderTextControlSingleLine::willBeDestroyed();
     74    RenderTextControlSingleLine::willBeDestroyed(builder);
    7575}
    7676
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderSearchField.h

    r224537 r228686  
    4949    bool isSearchField() const final { return true; }
    5050
    51     void willBeDestroyed() override;
     51    void willBeDestroyed(RenderTreeBuilder&) override;
    5252    LayoutUnit computeControlLogicalHeight(LayoutUnit lineHeight, LayoutUnit nonContentHeight) const override;
    5353    void updateFromElement() override;
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderSnapshottedPlugIn.cpp

    r225145 r228686  
    6464}
    6565
    66 void RenderSnapshottedPlugIn::willBeDestroyed()
     66void RenderSnapshottedPlugIn::willBeDestroyed(RenderTreeBuilder& builder)
    6767{
    6868    ASSERT(m_snapshotResource);
    6969    m_snapshotResource->shutdown();
    7070
    71     RenderEmbeddedObject::willBeDestroyed();
     71    RenderEmbeddedObject::willBeDestroyed(builder);
    7272}
    7373
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderSnapshottedPlugIn.h

    r225145 r228686  
    4444
    4545private:
    46     void willBeDestroyed() override;
     46    void willBeDestroyed(RenderTreeBuilder&) override;
    4747    void frameOwnerElement() const = delete;
    4848    const char* renderName() const final { return "RenderSnapshottedPlugIn"; }
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderText.cpp

    r225117 r228686  
    288288}
    289289
    290 void RenderText::willBeDestroyed()
     290void RenderText::willBeDestroyed(RenderTreeBuilder& builder)
    291291{
    292292    secureTextTimers().remove(this);
     
    299299    setInlineWrapperForDisplayContents(nullptr);
    300300
    301     RenderObject::willBeDestroyed();
     301    RenderObject::willBeDestroyed(builder);
    302302}
    303303
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderText.h

    r225117 r228686  
    184184protected:
    185185    virtual void computePreferredLogicalWidths(float leadWidth);
    186     void willBeDestroyed() override;
     186    void willBeDestroyed(RenderTreeBuilder&) override;
    187187
    188188    virtual void setRenderedText(const String&);
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderTextControlMultiLine.cpp

    r224537 r228686  
    4646}
    4747
    48 void RenderTextControlMultiLine::willBeDestroyed()
     48void RenderTextControlMultiLine::willBeDestroyed(RenderTreeBuilder& builder)
    4949{
    5050    if (textAreaElement().isConnected())
    5151        textAreaElement().rendererWillBeDestroyed();
    5252
    53     RenderTextControl::willBeDestroyed();
     53    RenderTextControl::willBeDestroyed(builder);
    5454}
    5555
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderTextControlMultiLine.h

    r224537 r228686  
    3636
    3737private:
    38     void willBeDestroyed() override;
     38    void willBeDestroyed(RenderTreeBuilder&) override;
    3939    void element() const = delete;
    4040
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderTextFragment.cpp

    r225117 r228686  
    2727#include "RenderIterator.h"
    2828#include "RenderMultiColumnFlow.h"
     29#include "RenderTreeBuilder.h"
    2930#include "Text.h"
    3031#include <wtf/IsoMallocInlines.h>
     
    7475}
    7576
    76 void RenderTextFragment::willBeDestroyed()
     77void RenderTextFragment::willBeDestroyed(RenderTreeBuilder& builder)
    7778{
    7879    if (m_firstLetter)
    79         m_firstLetter->removeFromParentAndDestroy();
    80     RenderText::willBeDestroyed();
     80        m_firstLetter->removeFromParentAndDestroy(builder);
     81    RenderText::willBeDestroyed(builder);
    8182}
    8283
     
    8889    if (!m_firstLetter)
    8990        return;
    90     m_firstLetter->removeFromParentAndDestroy();
     91    if (RenderTreeBuilder::current())
     92        m_firstLetter->removeFromParentAndDestroy(*RenderTreeBuilder::current());
     93    else {
     94        RenderTreeBuilder builder(*document().renderView());
     95        m_firstLetter->removeFromParentAndDestroy(builder);
     96    }
    9197    ASSERT(!m_firstLetter);
    9298    ASSERT(!textNode() || textNode()->renderer() == this);
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderTextFragment.h

    r224537 r228686  
    6161    bool isTextFragment() const override { return true; }
    6262    void styleDidChange(StyleDifference, const RenderStyle* oldStyle) override;
    63     void willBeDestroyed() override;
     63    void willBeDestroyed(RenderTreeBuilder&) override;
    6464
    6565    UChar previousCharacter() const override;
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderVideo.cpp

    r224537 r228686  
    6363}
    6464
    65 void RenderVideo::willBeDestroyed()
     65void RenderVideo::willBeDestroyed(RenderTreeBuilder& builder)
    6666{
    6767    if (auto player = videoElement().player())
    6868        player->setVisible(false);
    6969
    70     RenderMedia::willBeDestroyed();
     70    RenderMedia::willBeDestroyed(builder);
    7171}
    7272
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderVideo.h

    r224537 r228686  
    5555
    5656private:
    57     void willBeDestroyed() override;
     57    void willBeDestroyed(RenderTreeBuilder&) override;
    5858    void mediaElement() const = delete;
    5959
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderView.cpp

    r228655 r228686  
    612612}
    613613
    614 void RenderView::willBeDestroyed()
    615 {
    616     RenderBlockFlow::willBeDestroyed();
     614void RenderView::willBeDestroyed(RenderTreeBuilder& builder)
     615{
     616    RenderBlockFlow::willBeDestroyed(builder);
    617617    // FIXME: This is a workaround for leftover content (see webkit.org/b/182547).
    618618    if (firstChild()) {
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderView.h

    r224537 r228686  
    215215    bool isScrollableOrRubberbandableBox() const override;
    216216
    217     void willBeDestroyed() override;
     217    void willBeDestroyed(RenderTreeBuilder&) override;
    218218
    219219private:
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderWidget.cpp

    r224537 r228686  
    8989}
    9090
    91 void RenderWidget::willBeDestroyed()
     91void RenderWidget::willBeDestroyed(RenderTreeBuilder& builder)
    9292{
    9393#if PLATFORM(IOS)
     
    103103    setWidget(nullptr);
    104104
    105     RenderReplaced::willBeDestroyed();
     105    RenderReplaced::willBeDestroyed(builder);
    106106}
    107107
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderWidget.h

    r224537 r228686  
    7878    RenderWidget(HTMLFrameOwnerElement&, RenderStyle&&);
    7979
    80     void willBeDestroyed() override;
     80    void willBeDestroyed(RenderTreeBuilder&) override;
    8181    void styleDidChange(StyleDifference, const RenderStyle* oldStyle) final;
    8282    void layout() override;
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/svg/RenderSVGBlock.cpp

    r224537 r228686  
    7272}
    7373
    74 void RenderSVGBlock::willBeDestroyed()
     74void RenderSVGBlock::willBeDestroyed(RenderTreeBuilder& builder)
    7575{
    7676    SVGResourcesCache::clientDestroyed(*this);
    77     RenderBlockFlow::willBeDestroyed();
     77    RenderBlockFlow::willBeDestroyed(builder);
    7878}
    7979
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/svg/RenderSVGBlock.h

    r224537 r228686  
    3636protected:
    3737    RenderSVGBlock(SVGGraphicsElement&, RenderStyle&&);
    38     void willBeDestroyed() override;
     38    void willBeDestroyed(RenderTreeBuilder&) override;
    3939
    4040private:
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/svg/RenderSVGImage.cpp

    r224537 r228686  
    5858RenderSVGImage::~RenderSVGImage() = default;
    5959
    60 void RenderSVGImage::willBeDestroyed()
     60void RenderSVGImage::willBeDestroyed(RenderTreeBuilder& builder)
    6161{
    6262    imageResource().shutdown();
    63     RenderSVGModelObject::willBeDestroyed();
     63    RenderSVGModelObject::willBeDestroyed(builder);
    6464}
    6565
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/svg/RenderSVGImage.h

    r224537 r228686  
    5353
    5454private:
    55     void willBeDestroyed() override;
     55    void willBeDestroyed(RenderTreeBuilder&) override;
    5656
    5757    void element() const = delete;
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/svg/RenderSVGInline.cpp

    r227977 r228686  
    102102}
    103103
    104 void RenderSVGInline::willBeDestroyed()
     104void RenderSVGInline::willBeDestroyed(RenderTreeBuilder& builder)
    105105{
    106106    SVGResourcesCache::clientDestroyed(*this);
    107     RenderInline::willBeDestroyed();
     107    RenderInline::willBeDestroyed(builder);
    108108}
    109109
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/svg/RenderSVGInline.h

    r227977 r228686  
    5959    std::unique_ptr<InlineFlowBox> createInlineFlowBox() final;
    6060
    61     void willBeDestroyed() final;
     61    void willBeDestroyed(RenderTreeBuilder&) final;
    6262    void styleDidChange(StyleDifference, const RenderStyle* oldStyle) final;
    6363
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/svg/RenderSVGModelObject.cpp

    r224537 r228686  
    9393}
    9494
    95 void RenderSVGModelObject::willBeDestroyed()
     95void RenderSVGModelObject::willBeDestroyed(RenderTreeBuilder& builder)
    9696{
    9797    SVGResourcesCache::clientDestroyed(*this);
    98     RenderElement::willBeDestroyed();
     98    RenderElement::willBeDestroyed(builder);
    9999}
    100100
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/svg/RenderSVGModelObject.h

    r224537 r228686  
    7070    RenderSVGModelObject(SVGElement&, RenderStyle&&);
    7171
    72     void willBeDestroyed() override;
     72    void willBeDestroyed(RenderTreeBuilder&) override;
    7373
    7474private:
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/svg/RenderSVGResourceContainer.cpp

    r224537 r228686  
    5656}
    5757
    58 void RenderSVGResourceContainer::willBeDestroyed()
     58void RenderSVGResourceContainer::willBeDestroyed(RenderTreeBuilder& builder)
    5959{
    6060    SVGResourcesCache::resourceDestroyed(*this);
     
    6565    }
    6666
    67     RenderSVGHiddenContainer::willBeDestroyed();
     67    RenderSVGHiddenContainer::willBeDestroyed(builder);
    6868}
    6969
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/svg/RenderSVGResourceContainer.h

    r224537 r228686  
    6868    void removeClient(RenderElement&);
    6969
    70     void willBeDestroyed() final;
     70    void willBeDestroyed(RenderTreeBuilder&) final;
    7171    void registerResource();
    7272
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/svg/RenderSVGRoot.cpp

    r227977 r228686  
    271271}
    272272
    273 void RenderSVGRoot::willBeDestroyed()
     273void RenderSVGRoot::willBeDestroyed(RenderTreeBuilder& builder)
    274274{
    275275    RenderBlock::removePercentHeightDescendant(const_cast<RenderSVGRoot&>(*this));
    276276
    277277    SVGResourcesCache::clientDestroyed(*this);
    278     RenderReplaced::willBeDestroyed();
     278    RenderReplaced::willBeDestroyed(builder);
    279279}
    280280
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/svg/RenderSVGRoot.h

    r227977 r228686  
    7777    void paintReplaced(PaintInfo&, const LayoutPoint&) override;
    7878
    79     void willBeDestroyed() override;
     79    void willBeDestroyed(RenderTreeBuilder&) override;
    8080
    8181    void insertedIntoTree() override;
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/svg/RenderSVGText.cpp

    r227977 r228686  
    226226}
    227227
    228 void RenderSVGText::willBeDestroyed()
     228void RenderSVGText::willBeDestroyed(RenderTreeBuilder& builder)
    229229{
    230230    m_layoutAttributes.clear();
    231231    m_layoutAttributesBuilder.clearTextPositioningElements();
    232232
    233     RenderSVGBlock::willBeDestroyed();
     233    RenderSVGBlock::willBeDestroyed(builder);
    234234}
    235235
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/svg/RenderSVGText.h

    r227977 r228686  
    8686    void addChild(RenderTreeBuilder&, RenderPtr<RenderObject> child, RenderObject* beforeChild = nullptr) override;
    8787    RenderPtr<RenderObject> takeChild(RenderTreeBuilder&, RenderObject&) override;
    88     void willBeDestroyed() override;
     88    void willBeDestroyed(RenderTreeBuilder&) override;
    8989
    9090    const AffineTransform& localToParentTransform() const override { return m_localTransform; }
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilder.cpp

    r228685 r228686  
    386386    // If the tree is destroyed, there is no need for a clean-up phase.
    387387    if (child.renderTreeBeingDestroyed()) {
    388         child.removeFromParentAndDestroy();
     388        child.removeFromParentAndDestroy(*this);
    389389        return;
    390390    }
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderList.cpp

    r227977 r228686  
    8181    if (style.listStyleType() == NoneListStyle && (!style.listStyleImage() || style.listStyleImage()->errorOccurred())) {
    8282        if (auto* marker = listItemRenderer.markerRenderer())
    83             marker->removeFromParentAndDestroy();
     83            marker->removeFromParentAndDestroy(m_builder);
    8484        return;
    8585    }
     
    122122    // If current parent is an anonymous block that has lost all its children, destroy it.
    123123    if (currentParent && currentParent->isAnonymousBlock() && !currentParent->firstChild() && !downcast<RenderBlock>(*currentParent).continuation())
    124         currentParent->removeFromParentAndDestroy();
     124        currentParent->removeFromParentAndDestroy(m_builder);
    125125}
    126126
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderMultiColumn.cpp

    r228685 r228686  
    212212    }
    213213    while (auto* columnSet = multiColumnFlow.firstMultiColumnSet())
    214         columnSet->removeFromParentAndDestroy();
     214        columnSet->removeFromParentAndDestroy(m_builder);
    215215
    216216    flow.clearMultiColumnFlow();
    217217    multiColumnFlow.moveAllChildrenTo(m_builder, &flow, RenderBoxModelObject::NormalizeAfterInsertion::Yes);
    218     multiColumnFlow.removeFromParentAndDestroy();
     218    multiColumnFlow.removeFromParentAndDestroy(m_builder);
    219219    for (auto& parentAndSpanner : parentAndSpannerList)
    220220        m_builder.insertChild(*parentAndSpanner.first, WTFMove(parentAndSpanner.second));
     
    372372    // The placeholder may already have been removed, but if it hasn't, do so now.
    373373    if (auto placeholder = flow.spannerMap().take(&downcast<RenderBox>(spanner)))
    374         placeholder->removeFromParentAndDestroy();
     374        placeholder->removeFromParentAndDestroy(m_builder);
    375375
    376376    if (auto* next = spanner.nextSibling()) {
     
    378378            if (previous->isRenderMultiColumnSet() && next->isRenderMultiColumnSet()) {
    379379                // Merge two sets that no longer will be separated by a spanner.
    380                 next->removeFromParentAndDestroy();
     380                next->removeFromParentAndDestroy(m_builder);
    381381                previous->setNeedsLayout();
    382382            }
  • releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderRuby.cpp

    r228668 r228686  
    158158        anonBlockHere->moveAllChildrenTo(m_builder, anonBlockThere, RenderBoxModelObject::NormalizeAfterInsertion::Yes);
    159159        anonBlockHere->deleteLines();
    160         anonBlockHere->removeFromParentAndDestroy();
     160        anonBlockHere->removeFromParentAndDestroy(m_builder);
    161161    }
    162162    // Move all remaining children normally.
Note: See TracChangeset for help on using the changeset viewer.