Index: Source/platform/fonts/WidthIterator.cpp |
diff --git a/Source/platform/fonts/WidthIterator.cpp b/Source/platform/fonts/WidthIterator.cpp |
index 4775b50094e4ce8adf140433e1bb14d899d16000..8816fd8158fde2c8bcb73270715bf0ecc6f6a7f5 100644 |
--- a/Source/platform/fonts/WidthIterator.cpp |
+++ b/Source/platform/fonts/WidthIterator.cpp |
@@ -59,7 +59,7 @@ WidthIterator::WidthIterator(const Font* font, const TextRun& run, HashSet<const |
m_expansionPerOpportunity = 0; |
else { |
bool isAfterExpansion = m_isAfterExpansion; |
- unsigned expansionOpportunityCount = m_run.is8Bit() ? Character::expansionOpportunityCount(m_run.characters8(), m_run.length(), m_run.ltr() ? LTR : RTL, isAfterExpansion) : Character::expansionOpportunityCount(m_run.characters16(), m_run.length(), m_run.ltr() ? LTR : RTL, isAfterExpansion); |
+ unsigned expansionOpportunityCount = m_run.is8Bit() ? Character::expansionOpportunityCount(m_run.characters8(), m_run.length(), m_run.direction(), isAfterExpansion) : Character::expansionOpportunityCount(m_run.characters16(), m_run.length(), m_run.direction(), isAfterExpansion); |
if (isAfterExpansion && !m_run.allowsTrailingExpansion()) |
expansionOpportunityCount--; |
@@ -98,7 +98,7 @@ public: |
typedef Vector<pair<int, OriginalAdvancesForCharacterTreatedAsSpace>, 64> CharactersTreatedAsSpace; |
-static inline float applyFontTransforms(GlyphBuffer* glyphBuffer, bool ltr, unsigned& lastGlyphCount, const SimpleFontData* fontData, TypesettingFeatures typesettingFeatures, CharactersTreatedAsSpace& charactersTreatedAsSpace) |
+static inline float applyFontTransforms(GlyphBuffer* glyphBuffer, unsigned& lastGlyphCount, TypesettingFeatures typesettingFeatures, CharactersTreatedAsSpace& charactersTreatedAsSpace) |
{ |
ASSERT(typesettingFeatures & (Kerning | Ligatures)); |
@@ -178,7 +178,7 @@ inline unsigned WidthIterator::advanceInternal(TextIterator& textIterator, Glyph |
if (fontData != lastFontData && width) { |
if (shouldApplyFontTransforms()) |
- m_runWidthSoFar += applyFontTransforms(glyphBuffer, m_run.ltr(), lastGlyphCount, lastFontData, m_typesettingFeatures, charactersTreatedAsSpace); |
+ m_runWidthSoFar += applyFontTransforms(glyphBuffer, lastGlyphCount, m_typesettingFeatures, charactersTreatedAsSpace); |
lastFontData = fontData; |
if (m_fallbackFonts && fontData != primaryFont) { |
@@ -299,7 +299,7 @@ inline unsigned WidthIterator::advanceInternal(TextIterator& textIterator, Glyph |
} |
if (shouldApplyFontTransforms()) |
- m_runWidthSoFar += applyFontTransforms(glyphBuffer, m_run.ltr(), lastGlyphCount, lastFontData, m_typesettingFeatures, charactersTreatedAsSpace); |
+ m_runWidthSoFar += applyFontTransforms(glyphBuffer, lastGlyphCount, m_typesettingFeatures, charactersTreatedAsSpace); |
unsigned consumedCharacters = textIterator.currentCharacter() - m_currentCharacter; |
m_currentCharacter = textIterator.currentCharacter(); |