Index: third_party/WebKit/Source/core/layout/ColumnBalancer.cpp |
diff --git a/third_party/WebKit/Source/core/layout/ColumnBalancer.cpp b/third_party/WebKit/Source/core/layout/ColumnBalancer.cpp |
index 524d8c054e26a6efdf186efa713cf896241fc1b5..cbd19aa7ab697c6c94a7b1155ec7a57210c6ba00 100644 |
--- a/third_party/WebKit/Source/core/layout/ColumnBalancer.cpp |
+++ b/third_party/WebKit/Source/core/layout/ColumnBalancer.cpp |
@@ -33,15 +33,15 @@ void ColumnBalancer::traverseSubtree(const LayoutBox& box) |
break; |
examineLine(*line); |
} |
- return; |
} |
const LayoutFlowThread* flowThread = group().columnSet().flowThread(); |
bool isHorizontalWritingMode = flowThread->isHorizontalWritingMode(); |
- // Look for breaks between and inside children. |
+ // Look for breaks between and inside block-level children. Even if this is a block flow with |
+ // inline children, there may be interesting floats to examine here. |
for (const LayoutObject* child = box.slowFirstChild(); child; child = child->nextSibling()) { |
- if (!child->isBox()) |
+ if (!child->isBox() || child->isInline()) |
continue; |
const LayoutBox& childBox = toLayoutBox(*child); |
LayoutRect overflowRect = childBox.layoutOverflowRect(); |