| Index: WebCore/rendering/RenderBlock.cpp
|
| ===================================================================
|
| --- WebCore/rendering/RenderBlock.cpp (revision 68296)
|
| +++ WebCore/rendering/RenderBlock.cpp (working copy)
|
| @@ -343,7 +343,7 @@
|
| ASSERT(!continuation()); // We don't yet support column spans that aren't immediate children of the multi-column block.
|
|
|
| // The goal is to locate a suitable box in which to place our child.
|
| - RenderBlock* beforeChildParent = toRenderBlock(beforeChild ? beforeChild->parent() : lastChild());
|
| + RenderBlock* beforeChildParent = toRenderBlock(beforeChild && beforeChild->parent()->isRenderBlock() ? beforeChild->parent() : lastChild());
|
|
|
| // If the new child is floating or positioned it can just go in that block.
|
| if (newChild->isFloatingOrPositioned())
|
| @@ -620,7 +620,7 @@
|
| && !newChild->isInline() && !isAnonymousColumnSpanBlock()) {
|
| if (style()->specifiesColumns())
|
| columnsBlockAncestor = this;
|
| - else
|
| + else if (parent() && parent()->isRenderBlock())
|
| columnsBlockAncestor = toRenderBlock(parent())->containingColumnsBlock(false);
|
| }
|
| return columnsBlockAncestor;
|
| @@ -1017,9 +1017,6 @@
|
| // If this was our last child be sure to clear out our line boxes.
|
| if (childrenInline())
|
| lineBoxes()->deleteLineBoxes(renderArena());
|
| - // If we're now an empty anonymous columns or column span block, then go ahead and delete ourselves.
|
| - else if ((isAnonymousColumnsBlock() || isAnonymousColumnSpanBlock()) && parent() && parent()->isRenderBlock() && !continuation())
|
| - destroy();
|
| }
|
| }
|
|
|
|
|