Index: third_party/WebKit/Source/core/layout/svg/LayoutSVGText.cpp |
diff --git a/third_party/WebKit/Source/core/layout/svg/LayoutSVGText.cpp b/third_party/WebKit/Source/core/layout/svg/LayoutSVGText.cpp |
index 49ca3a8d5be6e9f122b066b1aecb50906453c36f..fd26d0879a60f0e41432a43dc3cab6043b2d5c0f 100644 |
--- a/third_party/WebKit/Source/core/layout/svg/LayoutSVGText.cpp |
+++ b/third_party/WebKit/Source/core/layout/svg/LayoutSVGText.cpp |
@@ -452,14 +452,17 @@ PositionWithAffinity LayoutSVGText::positionForPoint(const LayoutPoint& pointInC |
if (!rootBox) |
return createPositionWithAffinity(0); |
+ LayoutPoint clippedPointInContents(pointInContents); |
+ clippedPointInContents.clampNegativeToZero(); |
+ |
ASSERT(!rootBox->nextRootBox()); |
ASSERT(childrenInline()); |
- InlineBox* closestBox = toSVGRootInlineBox(rootBox)->closestLeafChildForPosition(pointInContents); |
+ InlineBox* closestBox = toSVGRootInlineBox(rootBox)->closestLeafChildForPosition(clippedPointInContents); |
if (!closestBox) |
return createPositionWithAffinity(0); |
- return closestBox->lineLayoutItem().positionForPoint(LayoutPoint(pointInContents.x(), closestBox->y())); |
+ return closestBox->lineLayoutItem().positionForPoint(LayoutPoint(clippedPointInContents.x(), closestBox->y())); |
} |
void LayoutSVGText::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed) const |