Index: third_party/WebKit/Source/platform/fonts/FontCache.cpp |
diff --git a/third_party/WebKit/Source/platform/fonts/FontCache.cpp b/third_party/WebKit/Source/platform/fonts/FontCache.cpp |
index 7a24d7626df21ad9dbf99f27ac15f0c2f4a8df08..2844a92e37aa811a9dd023d1d65441be65a5e5da 100644 |
--- a/third_party/WebKit/Source/platform/fonts/FontCache.cpp |
+++ b/third_party/WebKit/Source/platform/fonts/FontCache.cpp |
@@ -98,6 +98,21 @@ FontCache* FontCache::fontCache() { |
return &globalFontCache; |
} |
+#if !OS(MACOSX) |
+FontPlatformData* FontCache::systemFontPlatformData( |
+ const FontDescription& fontDescription) { |
+ const AtomicString& family = FontCache::systemFontFamily(); |
+#if OS(LINUX) |
+ if (family.isEmpty() || family == FontFamilyNames::system_ui) |
+ return nullptr; |
+#else |
+ DCHECK(!family.isEmpty() && family != FontFamilyNames::system_ui); |
+#endif |
+ return getFontPlatformData(fontDescription, FontFaceCreationParams(family), |
+ true); |
+} |
+#endif |
+ |
FontPlatformData* FontCache::getFontPlatformData( |
const FontDescription& fontDescription, |
const FontFaceCreationParams& creationParams, |
@@ -107,28 +122,12 @@ FontPlatformData* FontCache::getFontPlatformData( |
platformInit(); |
} |
- if (creationParams.creationType() == CreateFontByFamily) { |
-#if OS(MACOSX) |
- if (creationParams.family() == FontCache::legacySystemFontFamily()) { |
- return getFontPlatformData( |
- fontDescription, FontFaceCreationParams(FontFamilyNames::system_ui), |
- true); |
- } |
-#else |
- if (creationParams.family() == FontFamilyNames::system_ui) { |
- const AtomicString& actualFamily = FontCache::systemFontFamily(); |
-#if OS(LINUX) |
- if (actualFamily.isEmpty() || actualFamily == FontFamilyNames::system_ui) |
- return nullptr; |
-#else |
- DCHECK(!actualFamily.isEmpty() && |
- actualFamily != FontFamilyNames::system_ui); |
-#endif |
- return getFontPlatformData(fontDescription, |
- FontFaceCreationParams(actualFamily), true); |
- } |
-#endif |
+#if !OS(MACOSX) |
+ if (creationParams.creationType() == CreateFontByFamily && |
+ creationParams.family() == FontFamilyNames::system_ui) { |
+ return systemFontPlatformData(fontDescription); |
} |
+#endif |
float size = fontDescription.effectiveFontSize(); |
unsigned roundedSize = size * FontCacheKey::precisionMultiplier(); |