Index: Source/platform/fonts/Font.cpp |
diff --git a/Source/platform/fonts/Font.cpp b/Source/platform/fonts/Font.cpp |
index 36aaf674fa30c829a3ad41331af011c974918839..6f6b4390160d6561fb5f88a4668ab652fcc013e8 100644 |
--- a/Source/platform/fonts/Font.cpp |
+++ b/Source/platform/fonts/Font.cpp |
@@ -704,11 +704,8 @@ float Font::floatWidthForComplexText(const TextRun& run, HashSet<const SimpleFon |
int Font::offsetForPositionForComplexText(const TextRun& run, float xFloat, |
bool includePartialGlyphs) const |
{ |
- HarfBuzzShaper shaper(this, run); |
- RefPtr<ShapeResult> shapeResult = shaper.shapeResult(); |
- if (!shapeResult) |
- return 0; |
- return shapeResult->offsetForPosition(xFloat); |
+ CachingWordShaper& shaper = m_fontFallbackList->cachingWordShaper(); |
+ return shaper.offsetForPosition(this, run, xFloat); |
} |
// Return the rectangle for selecting the given range of code-points in the TextRun. |