| Index: third_party/WebKit/Source/core/layout/LayoutGrid.cpp
|
| diff --git a/third_party/WebKit/Source/core/layout/LayoutGrid.cpp b/third_party/WebKit/Source/core/layout/LayoutGrid.cpp
|
| index 333728c46d3428d185ed5c5885f913345cddce32..0cac743d5d8dc69410594fec02e235732968733d 100644
|
| --- a/third_party/WebKit/Source/core/layout/LayoutGrid.cpp
|
| +++ b/third_party/WebKit/Source/core/layout/LayoutGrid.cpp
|
| @@ -1404,7 +1404,6 @@ void LayoutGrid::layoutPositionedObjects(bool relayoutChildren, PositionedLayout
|
| continue;
|
| }
|
|
|
| - // FIXME: Detect properly if start/end is auto for inexistent named grid lines.
|
| LayoutUnit columnOffset = LayoutUnit();
|
| LayoutUnit columnBreadth = LayoutUnit();
|
| offsetAndBreadthForPositionedChild(*child, ForColumns, columnOffset, columnBreadth);
|
| @@ -1432,8 +1431,10 @@ void LayoutGrid::offsetAndBreadthForPositionedChild(const LayoutBox& child, Grid
|
| return;
|
| }
|
|
|
| - bool startIsAuto = (direction == ForColumns) ? child.style()->gridColumnStart().isAuto() : child.style()->gridRowStart().isAuto();
|
| - bool endIsAuto = (direction == ForColumns) ? child.style()->gridColumnEnd().isAuto() : child.style()->gridRowEnd().isAuto();
|
| + GridPosition startPosition = (direction == ForColumns) ? child.style()->gridColumnStart() : child.style()->gridRowStart();
|
| + GridPosition endPosition = (direction == ForColumns) ? child.style()->gridColumnEnd() : child.style()->gridRowEnd();
|
| + bool startIsAuto = startPosition.isAuto() || (startPosition.isNamedGridArea() && !GridResolvedPosition::isValidNamedLineOrArea(startPosition.namedGridLine(), styleRef(), GridResolvedPosition::initialPositionSide(direction)));
|
| + bool endIsAuto = endPosition.isAuto() || (endPosition.isNamedGridArea() && !GridResolvedPosition::isValidNamedLineOrArea(endPosition.namedGridLine(), styleRef(), GridResolvedPosition::finalPositionSide(direction)));
|
|
|
| GridResolvedPosition firstPosition = GridResolvedPosition(0);
|
| GridResolvedPosition initialPosition = startIsAuto ? firstPosition : positions->resolvedInitialPosition;
|
|
|