| Index: Source/WebCore/rendering/RenderBlock.cpp
|
| ===================================================================
|
| --- Source/WebCore/rendering/RenderBlock.cpp (revision 105790)
|
| +++ Source/WebCore/rendering/RenderBlock.cpp (working copy)
|
| @@ -446,6 +446,8 @@
|
| else {
|
| cloneBlock = new (renderArena()) RenderBlock(node());
|
| cloneBlock->setStyle(style());
|
| + if (!childrenInline() && cloneBlock->firstChild() && cloneBlock->firstChild()->isInline())
|
| + cloneBlock->makeChildrenNonInline();
|
| }
|
| cloneBlock->setChildrenInline(childrenInline());
|
| return cloneBlock;
|
| @@ -659,8 +661,8 @@
|
| // cross the streams and have to cope with both types of continuations mixed together).
|
| // This function currently supports (1) and (2).
|
| RenderBlock* columnsBlockAncestor = 0;
|
| - if (!newChild->isText() && newChild->style()->columnSpan() && !newChild->isFloatingOrPositioned()
|
| - && !newChild->isInline() && !isAnonymousColumnSpanBlock()) {
|
| + if (!newChild->isText() && newChild->style()->columnSpan() && !newChild->isBeforeOrAfterContent()
|
| + && !newChild->isFloatingOrPositioned() && !newChild->isInline() && !isAnonymousColumnSpanBlock()) {
|
| if (style()->specifiesColumns())
|
| columnsBlockAncestor = this;
|
| else if (!isInline() && parent() && parent()->isRenderBlock()) {
|
|
|