| 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);
|
|
|