- // Find a fallback-font.
- fontId = fontClient.FindFallbackFont( character,
- currentFontDescription,
- currentFontPointSize,
- preferColor );
-
- if( 0u == fontId )
- {
- // If the system does not support a suitable font, fallback to Latin
- defaultFontsPerScript = *( defaultFontPerScriptCacheBuffer + TextAbstraction::LATIN );
- if( NULL != defaultFontsPerScript )
- {
- fontId = defaultFontsPerScript->FindFont( fontClient,
- currentFontDescription,
- currentFontPointSize );
- }
- }
-
- if( 0u == fontId )
- {
- fontId = fontClient.FindDefaultFont( UTF32_A, currentFontPointSize );
- }
-
- // Cache the font.
- if( NULL == defaultFontsPerScript )
+ if(!isCommonScript && (script != TextAbstraction::UNKNOWN))
+ {
+ // Cache the font if it is not an unknown script
+ if(NULL == defaultFontsPerScript)