Index: Source/platform/fonts/WidthIterator.cpp |
diff --git a/Source/platform/fonts/WidthIterator.cpp b/Source/platform/fonts/WidthIterator.cpp |
index 772fdb9a7132a50b4b00a11c33560a82c5c0f363..4775b50094e4ce8adf140433e1bb14d899d16000 100644 |
--- a/Source/platform/fonts/WidthIterator.cpp |
+++ b/Source/platform/fonts/WidthIterator.cpp |
@@ -184,9 +184,10 @@ inline unsigned WidthIterator::advanceInternal(TextIterator& textIterator, Glyph |
if (m_fallbackFonts && fontData != primaryFont) { |
// FIXME: This does a little extra work that could be avoided if |
// glyphDataForCharacter() returned whether it chose to use a small caps font. |
- if (!m_font->fontDescription().variant() || character == toUpper(character)) |
+ if (m_font->fontDescription().variant() == FontVariantNormal || character == toUpper(character)) |
m_fallbackFonts->add(fontData); |
else { |
+ ASSERT(m_font->fontDescription().variant() == FontVariantSmallCaps); |
const GlyphData& uppercaseGlyphData = m_font->glyphDataForCharacter(toUpper(character), rtl); |
if (uppercaseGlyphData.fontData != primaryFont) |
m_fallbackFonts->add(uppercaseGlyphData.fontData); |