| Index: Source/core/rendering/RenderBox.cpp
|
| diff --git a/Source/core/rendering/RenderBox.cpp b/Source/core/rendering/RenderBox.cpp
|
| index d08b3e586e7a1029c8b6f54e29794111935075af..55f12f1e69b150f2a66327da98aa942e01c0f183 100644
|
| --- a/Source/core/rendering/RenderBox.cpp
|
| +++ b/Source/core/rendering/RenderBox.cpp
|
| @@ -52,6 +52,7 @@
|
| #include "core/rendering/RenderLayer.h"
|
| #include "core/rendering/RenderListBox.h"
|
| #include "core/rendering/RenderListMarker.h"
|
| +#include "core/rendering/RenderMultiColumnSpannerPlaceholder.h"
|
| #include "core/rendering/RenderTableCell.h"
|
| #include "core/rendering/RenderView.h"
|
| #include "core/rendering/compositing/RenderLayerCompositor.h"
|
| @@ -99,6 +100,15 @@ RenderBox::RenderBox(ContainerNode* node)
|
| setIsBox();
|
| }
|
|
|
| +void RenderBox::willBeRemovedFromTree()
|
| +{
|
| + if (m_rareData && m_rareData->m_spannerPlaceholder) {
|
| + m_rareData->m_spannerPlaceholder->spannerWillBeRemoved();
|
| + m_rareData->m_spannerPlaceholder = 0;
|
| + }
|
| + RenderBoxModelObject::willBeRemovedFromTree();
|
| +}
|
| +
|
| void RenderBox::willBeDestroyed()
|
| {
|
| clearOverrideSize();
|
| @@ -1658,6 +1668,19 @@ void RenderBox::deleteLineBoxWrapper()
|
| }
|
| }
|
|
|
| +void RenderBox::setSpannerPlaceholder(RenderMultiColumnSpannerPlaceholder& placeholder)
|
| +{
|
| + RELEASE_ASSERT(!m_rareData || !m_rareData->m_spannerPlaceholder); // not expected to change directly from one spanner to another.
|
| + ensureRareData().m_spannerPlaceholder = &placeholder;
|
| +}
|
| +
|
| +void RenderBox::clearSpannerPlaceholder()
|
| +{
|
| + if (!m_rareData)
|
| + return;
|
| + m_rareData->m_spannerPlaceholder = 0;
|
| +}
|
| +
|
| LayoutRect RenderBox::clippedOverflowRectForPaintInvalidation(const RenderLayerModelObject* paintInvalidationContainer, const PaintInvalidationState* paintInvalidationState) const
|
| {
|
| if (style()->visibility() != VISIBLE) {
|
|
|