Index: third_party/WebKit/Source/core/layout/LayoutBlock.cpp |
diff --git a/third_party/WebKit/Source/core/layout/LayoutBlock.cpp b/third_party/WebKit/Source/core/layout/LayoutBlock.cpp |
index a1e1e396a0a688ec1b942d21d6eff193c8a2119e..74ebd411405f714030916ce3fd7fe9eb62324e5e 100644 |
--- a/third_party/WebKit/Source/core/layout/LayoutBlock.cpp |
+++ b/third_party/WebKit/Source/core/layout/LayoutBlock.cpp |
@@ -654,6 +654,21 @@ void LayoutBlock::makeChildrenInlineIfPossible() |
setChildrenInline(true); |
} |
+bool LayoutBlock::collapseLoneAnonymousBlock(LayoutBlock* child) |
+{ |
+ if (!child->isAnonymousBlock()) |
+ return false; |
+ if (child->beingDestroyed()) |
mstensho (USE GERRIT)
2016/01/18 20:06:24
Do you really need this? collapseAnonymousBlockChi
|
+ return false; |
+ if (child->nextSibling() || child->continuation()) |
mstensho (USE GERRIT)
2016/01/18 20:06:24
Looks like we're missing a child->previousSibling(
|
+ return false; |
+ LayoutBlock* parent = child->containingBlock(); |
+ if (parent->isRubyBase() || parent->isRubyRun()) |
mstensho (USE GERRIT)
2016/01/18 20:06:24
Ah... ruby, out of the blue. But I guess that's ho
|
+ return false; |
+ collapseAnonymousBlockChild(parent, child); |
+ return true; |
+} |
+ |
void LayoutBlock::collapseAnonymousBlockChild(LayoutBlock* parent, LayoutBlock* child) |
{ |
// It's possible that this block's destruction may have been triggered by the |