Index: Source/core/layout/LayoutBlockFlow.cpp |
diff --git a/Source/core/layout/LayoutBlockFlow.cpp b/Source/core/layout/LayoutBlockFlow.cpp |
index 914c9de5a4b3720e53bc7e6ecf988c4ed8f44ce5..516ee2fefb9999aa9fce21c9145c41c9d1e9a712 100644 |
--- a/Source/core/layout/LayoutBlockFlow.cpp |
+++ b/Source/core/layout/LayoutBlockFlow.cpp |
@@ -3100,6 +3100,15 @@ void LayoutBlockFlow::createOrDestroyMultiColumnFlowThreadIfNeeded(const Compute |
if (isRuby()) |
return; |
+ // Fieldsets look for a legend special child (layoutSpecialExcludedChild()). We currently only |
+ // support one special child per layout object, and the flow thread would make for a second one. |
+ if (isFieldset()) |
+ return; |
+ |
+ // Form controls are replaced content, and are therefore not supposed to support multicol. |
+ if (isFileUploadControl() || isTextControl() || isListBox()) |
+ return; |
+ |
LayoutMultiColumnFlowThread* flowThread = createMultiColumnFlowThread(type); |
addChild(flowThread); |