Update path to Android font config file

In version LMP, Android is expected to change the path to their font
configuration file (and condense several files into one), as well as
changing the format (qv http://crrev.com/446473003/). This patch tries
the new path before falling back to the old path.

The new fonts are incompatible with assumptions made by the old
SkFontConfigInterfaceAndroid, so this patch MUST NOT land until
https://crrev.com/462073002/ or the equivalent has turned on the
new SkFontManager.

BUG=chromium:400801
R=djsollen@google.com, bungeman@google.com, tomhudson@google.com

Committed: https://skia.googlesource.com/skia/+/94fa4b99e2a53e997a90c7808cc5263f1bf40c9f

Author: tomhudson@chromium.org

Review URL: https://codereview.chromium.org/458543002
This commit is contained in:
tomhudson 2014-08-13 11:06:43 -07:00 committed by Commit bot
parent 69a5560ea5
commit 7a4747f4f6

View File

@ -19,7 +19,7 @@
// From Android version LMP onwards, all font files collapse into
// /system/fonts/fonts.xml. Instead of trying to detect which version
// /system/etc/fonts.xml. Instead of trying to detect which version
// we're on, try to open fonts.xml; if that fails, fall back to the
// older filename.
#define LMP_SYSTEM_FONTS_FILE "/system/etc/fonts.xml"
@ -465,9 +465,10 @@ static void parseConfigFile(const char* filename, SkTDArray<FontFamily*> &famili
}
static void getSystemFontFamilies(SkTDArray<FontFamily*> &fontFamilies) {
int initialCount = fontFamilies.count();
parseConfigFile(LMP_SYSTEM_FONTS_FILE, fontFamilies);
if (0 == fontFamilies.count()) {
if (initialCount == fontFamilies.count()) {
parseConfigFile(OLD_SYSTEM_FONTS_FILE, fontFamilies);
}
}