| Index: Source/core/rendering/RenderFlexibleBox.cpp
|
| diff --git a/Source/core/rendering/RenderFlexibleBox.cpp b/Source/core/rendering/RenderFlexibleBox.cpp
|
| index d8dfa98834e550388609261a09d348f2df5d60f6..8bbedef0cd959c97a3855a38d6843a28e4742e46 100644
|
| --- a/Source/core/rendering/RenderFlexibleBox.cpp
|
| +++ b/Source/core/rendering/RenderFlexibleBox.cpp
|
| @@ -31,12 +31,13 @@
|
| #include "config.h"
|
| #include "core/rendering/RenderFlexibleBox.h"
|
|
|
| -#include <limits>
|
| +#include "core/rendering/LayoutRectRecorder.h"
|
| #include "core/rendering/LayoutRepainter.h"
|
| #include "core/rendering/RenderLayer.h"
|
| #include "core/rendering/RenderView.h"
|
| #include "platform/LengthFunctions.h"
|
| #include "wtf/MathExtras.h"
|
| +#include <limits>
|
|
|
| namespace WebCore {
|
|
|
| @@ -227,6 +228,7 @@ void RenderFlexibleBox::layoutBlock(bool relayoutChildren, LayoutUnit)
|
| return;
|
|
|
| LayoutRepainter repainter(*this, checkForRepaintDuringLayout());
|
| + LayoutRectRecorder recorder(*this);
|
|
|
| if (updateLogicalWidthAndColumnWidth())
|
| relayoutChildren = true;
|
| @@ -1068,6 +1070,8 @@ void RenderFlexibleBox::layoutAndPlaceChildren(LayoutUnit& crossAxisOffset, cons
|
| bool shouldFlipMainAxis = !isColumnFlow() && !isLeftToRightFlow();
|
| for (size_t i = 0; i < children.size(); ++i) {
|
| RenderBox* child = children[i];
|
| + LayoutRectRecorder recorder(*child);
|
| +
|
| if (child->isOutOfFlowPositioned()) {
|
| prepareChildForPositionedLayout(child, mainAxisOffset, crossAxisOffset, FlipForRowReverse);
|
| continue;
|
| @@ -1147,6 +1151,8 @@ void RenderFlexibleBox::layoutColumnReverse(const OrderedFlexItemList& children,
|
| size_t seenInFlowPositionedChildren = 0;
|
| for (size_t i = 0; i < children.size(); ++i) {
|
| RenderBox* child = children[i];
|
| + LayoutRectRecorder recorder(*child);
|
| +
|
| if (child->isOutOfFlowPositioned()) {
|
| child->layer()->setStaticBlockPosition(mainAxisOffset);
|
| continue;
|
|
|