Index: Source/core/rendering/RenderBlockFlow.cpp |
diff --git a/Source/core/rendering/RenderBlockFlow.cpp b/Source/core/rendering/RenderBlockFlow.cpp |
index a3680c646ad3c39a3adc989283b232dc7b469822..b484071deeb3586a7f679bc71adaa7d31e727b59 100644 |
--- a/Source/core/rendering/RenderBlockFlow.cpp |
+++ b/Source/core/rendering/RenderBlockFlow.cpp |
@@ -309,6 +309,7 @@ inline bool RenderBlockFlow::layoutBlockFlow(bool relayoutChildren, LayoutUnit & |
{ |
LayoutRepainter repainter(*this, checkForRepaintDuringLayout()); |
+ LayoutUnit oldLeft = logicalLeft(); |
if (updateLogicalWidthAndColumnWidth()) |
relayoutChildren = true; |
@@ -425,7 +426,7 @@ inline bool RenderBlockFlow::layoutBlockFlow(bool relayoutChildren, LayoutUnit & |
if (heightChanged) |
relayoutChildren = true; |
- layoutPositionedObjects(relayoutChildren || isRoot()); |
+ layoutPositionedObjects(relayoutChildren || isRoot(), oldLeft != logicalLeft() ? LayoutPositionedContainingBlockMoved : LayoutPositionedDefault); |
updateRegionsAndShapesAfterChildLayout(flowThread, heightChanged); |