Index: Source/platform/fonts/Font.cpp |
diff --git a/Source/platform/fonts/Font.cpp b/Source/platform/fonts/Font.cpp |
index fcf0d6448827e7020f7a94cd709879e699c2c9b5..e2c4e119c2603efea92499af169c276a758b2d32 100644 |
--- a/Source/platform/fonts/Font.cpp |
+++ b/Source/platform/fonts/Font.cpp |
@@ -707,12 +707,8 @@ float Font::floatWidthForComplexText(const TextRun& run, HashSet<const SimpleFon |
int Font::offsetForPositionForComplexText(const TextRun& run, float xFloat, |
bool includePartialGlyphs) const |
{ |
- HashSet<const SimpleFontData*> fallbackFonts; |
- HarfBuzzShaper shaper(this, run, &fallbackFonts); |
- 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. |