| Index: Source/core/layout/shapes/ShapeOutsideInfo.cpp
 | 
| diff --git a/Source/core/layout/shapes/ShapeOutsideInfo.cpp b/Source/core/layout/shapes/ShapeOutsideInfo.cpp
 | 
| index 7e92b12f8647f014b27546ba02b61631909857ed..3c4578de167e23301862b5e35ab4d4092ab16076 100644
 | 
| --- a/Source/core/layout/shapes/ShapeOutsideInfo.cpp
 | 
| +++ b/Source/core/layout/shapes/ShapeOutsideInfo.cpp
 | 
| @@ -286,12 +286,12 @@ ShapeOutsideDeltas ShapeOutsideInfo::computeDeltasForContainingBlockLine(const L
 | 
|  {
 | 
|      ASSERT(lineHeight >= 0);
 | 
|  
 | 
| -    LayoutUnit borderBoxTop = containingBlock.logicalTopForFloat(&floatingObject) + containingBlock.marginBeforeForChild(m_layoutBox);
 | 
| +    LayoutUnit borderBoxTop = containingBlock.logicalTopForFloat(floatingObject) + containingBlock.marginBeforeForChild(m_layoutBox);
 | 
|      LayoutUnit borderBoxLineTop = lineTop - borderBoxTop;
 | 
|  
 | 
|      if (isShapeDirty() || !m_shapeOutsideDeltas.isForLine(borderBoxLineTop, lineHeight)) {
 | 
|          LayoutUnit referenceBoxLineTop = borderBoxLineTop - logicalTopOffset();
 | 
| -        LayoutUnit floatMarginBoxWidth = std::max(containingBlock.logicalWidthForFloat(&floatingObject), LayoutUnit());
 | 
| +        LayoutUnit floatMarginBoxWidth = std::max(containingBlock.logicalWidthForFloat(floatingObject), LayoutUnit());
 | 
|  
 | 
|          if (computedShape().lineOverlapsShapeMarginBounds(referenceBoxLineTop, lineHeight)) {
 | 
|              LineSegment segment = computedShape().getExcludedInterval((borderBoxLineTop - logicalTopOffset()), std::min(lineHeight, shapeLogicalBottom() - borderBoxLineTop));
 | 
| 
 |