Changeset 175580 in webkit


Ignore:
Timestamp:
Nov 4, 2014 2:16:52 PM (9 years ago)
Author:
akling@apple.com
Message:

RenderBox shouldn't need a pre-destructor hook.
<https://webkit.org/b/138367>

Reviewed by Antti Koivisto.

Move teardown logic from willBeDestroyed() to the regular ~RenderBox()
destructor since none of it depends on being in-tree or having a fully
constructed vtable.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::~RenderBox):
(WebCore::RenderBox::willBeDestroyed): Deleted.

  • rendering/RenderBox.h:
Location:
trunk/Source/WebCore
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r175579 r175580  
     12014-11-04  Andreas Kling  <akling@apple.com>
     2
     3        RenderBox shouldn't need a pre-destructor hook.
     4        <https://webkit.org/b/138367>
     5
     6        Reviewed by Antti Koivisto.
     7
     8        Move teardown logic from willBeDestroyed() to the regular ~RenderBox()
     9        destructor since none of it depends on being in-tree or having a fully
     10        constructed vtable.
     11
     12        * rendering/RenderBox.cpp:
     13        (WebCore::RenderBox::~RenderBox):
     14        (WebCore::RenderBox::willBeDestroyed): Deleted.
     15        * rendering/RenderBox.h:
     16
    1172014-11-04  Myles C. Maxfield  <mmaxfield@apple.com>
    218
  • trunk/Source/WebCore/rendering/RenderBox.cpp

    r175230 r175580  
    132132RenderBox::~RenderBox()
    133133{
     134    if (frame().eventHandler().autoscrollRenderer() == this)
     135        frame().eventHandler().stopAutoscrollTimer(true);
     136
     137    clearOverrideSize();
     138#if ENABLE(CSS_GRID_LAYOUT)
     139    clearContainingBlockOverrideSize();
     140#endif
     141
     142    RenderBlock::removePercentHeightDescendantIfNeeded(*this);
     143
     144#if ENABLE(CSS_SHAPES)
     145    ShapeOutsideInfo::removeInfo(*this);
     146#endif
     147
    134148    view().unscheduleLazyRepaint(*this);
    135149    if (hasControlStatesForRenderer(this))
     
    235249        return LayoutRect(logicalLeft, 0, logicalWidth, height());
    236250    return LayoutRect(0, logicalLeft, width(), logicalWidth);
    237 }
    238 
    239 void RenderBox::willBeDestroyed()
    240 {
    241     if (frame().eventHandler().autoscrollRenderer() == this)
    242         frame().eventHandler().stopAutoscrollTimer(true);
    243 
    244     clearOverrideSize();
    245 #if ENABLE(CSS_GRID_LAYOUT)
    246     clearContainingBlockOverrideSize();
    247 #endif
    248 
    249     RenderBlock::removePercentHeightDescendantIfNeeded(*this);
    250 
    251 #if ENABLE(CSS_SHAPES)
    252     ShapeOutsideInfo::removeInfo(*this);
    253 #endif
    254 
    255     RenderBoxModelObject::willBeDestroyed();
    256251}
    257252
  • trunk/Source/WebCore/rendering/RenderBox.h

    r174840 r175580  
    616616    RenderBox(Document&, PassRef<RenderStyle>, unsigned baseTypeFlags);
    617617
    618     virtual void willBeDestroyed() override;
    619 
    620618    virtual void styleWillChange(StyleDifference, const RenderStyle& newStyle) override;
    621619    virtual void styleDidChange(StyleDifference, const RenderStyle* oldStyle) override;
Note: See TracChangeset for help on using the changeset viewer.