Index: Source/core/rendering/shapes/PolygonShape.cpp |
diff --git a/Source/core/rendering/shapes/PolygonShape.cpp b/Source/core/rendering/shapes/PolygonShape.cpp |
index 02e239a09e50e1222401fa9db359f1c4ed7fcfee..79bd3bdc082f32c1808e6c24521dfd03d70cca0f 100644 |
--- a/Source/core/rendering/shapes/PolygonShape.cpp |
+++ b/Source/core/rendering/shapes/PolygonShape.cpp |
@@ -100,7 +100,7 @@ static float circleXIntercept(float y, float radius) |
static FloatShapeInterval clippedCircleXRange(const FloatPoint& center, float radius, float y1, float y2) |
{ |
- if (y1 > center.y() + radius || y2 < center.y() - radius) |
+ if (y1 >= center.y() + radius || y2 <= center.y() - radius) |
return FloatShapeInterval(); |
if (center.y() >= y1 && center.y() <= y2) |
@@ -143,6 +143,7 @@ LineSegment PolygonShape::getExcludedInterval(LayoutUnit logicalTop, LayoutUnit |
excludedInterval.unite(OffsetPolygonEdge(edge, outwardEdgeNormal(edge) * shapeMargin()).clippedEdgeXRange(y1, y2)); |
excludedInterval.unite(OffsetPolygonEdge(edge, inwardEdgeNormal(edge) * shapeMargin()).clippedEdgeXRange(y1, y2)); |
excludedInterval.unite(clippedCircleXRange(edge.vertex1(), shapeMargin(), y1, y2)); |
+ excludedInterval.unite(clippedCircleXRange(edge.vertex2(), shapeMargin(), y1, y2)); |
} |
} |