Index: Source/WebCore/rendering/RenderBlock.cpp |
=================================================================== |
--- Source/WebCore/rendering/RenderBlock.cpp (revision 118055) |
+++ Source/WebCore/rendering/RenderBlock.cpp (working copy) |
@@ -610,6 +610,13 @@ |
currChildNextSibling = 0; // We destroyed the last child, so now we need to update |
// the value of currChildNextSibling. |
+ // It is possible that positioned objects under blockCurr are going to be moved to cloneBlock. |
+ // Since we are doing layout anyway, it is easier to blow away the entire list, than |
+ // traversing down the subtree looking for positioned children and then remove them |
+ // from our positioned objects list. |
+ if (currChildNextSibling) |
+ blockCurr->removePositionedObjects(0); |
+ |
// Now we need to take all of the children starting from the first child |
// *after* currChild and append them all to the clone. |
blockCurr->moveChildrenTo(cloneBlock, currChildNextSibling, 0, true); |