| Index: third_party/WebKit/Source/core/layout/LayoutBox.cpp
|
| diff --git a/third_party/WebKit/Source/core/layout/LayoutBox.cpp b/third_party/WebKit/Source/core/layout/LayoutBox.cpp
|
| index 7be475bd7ae129ad8e1d459570defd90960c1736..464aa2775f1b570c3ff8dbf14ec791a4f63b1d77 100644
|
| --- a/third_party/WebKit/Source/core/layout/LayoutBox.cpp
|
| +++ b/third_party/WebKit/Source/core/layout/LayoutBox.cpp
|
| @@ -4567,15 +4567,13 @@ static void markBoxForRelayoutAfterSplit(LayoutBox* box)
|
| box->setNeedsLayoutAndPrefWidthsRecalcAndFullPaintInvalidation(LayoutInvalidationReason::AnonymousBlockChange);
|
| }
|
|
|
| -static void collapseLoneAnonymousBlockChild(LayoutObject* child)
|
| +static void collapseLoneAnonymousBlockChild(LayoutBox* parent, LayoutObject* child)
|
| {
|
| - ASSERT(child);
|
| - if (!child->isAnonymousBlock())
|
| + if (!child->isAnonymousBlock() || !child->isLayoutBlockFlow())
|
| return;
|
| - LayoutObject* parent = child->parent();
|
| - if (!parent->isLayoutBlock())
|
| + if (!parent->isLayoutBlockFlow())
|
| return;
|
| - LayoutBlock::collapseAnonymousBlockChild(toLayoutBlock(parent), toLayoutBlock(child));
|
| + toLayoutBlockFlow(parent)->collapseAnonymousBlockChild(toLayoutBlockFlow(child));
|
| }
|
|
|
| LayoutObject* LayoutBox::splitAnonymousBoxesAroundChild(LayoutObject* beforeChild)
|
| @@ -4601,11 +4599,11 @@ LayoutObject* LayoutBox::splitAnonymousBoxesAroundChild(LayoutObject* beforeChil
|
| LayoutObject* child = postBox->slowFirstChild();
|
| ASSERT(child);
|
| if (child && !child->nextSibling())
|
| - collapseLoneAnonymousBlockChild(child);
|
| + collapseLoneAnonymousBlockChild(postBox, child);
|
| child = boxToSplit->slowFirstChild();
|
| ASSERT(child);
|
| if (child && !child->nextSibling())
|
| - collapseLoneAnonymousBlockChild(child);
|
| + collapseLoneAnonymousBlockChild(boxToSplit, child);
|
|
|
| markBoxForRelayoutAfterSplit(boxToSplit);
|
| markBoxForRelayoutAfterSplit(postBox);
|
|
|