Index: src/ports/SkFontMgr_fontconfig.cpp |
diff --git a/src/ports/SkFontMgr_fontconfig.cpp b/src/ports/SkFontMgr_fontconfig.cpp |
index 6fc1f28c89bc318ce2d26622b5acf94f0da295ef..7f794690d769bf0cf7a11835e98d11bd645994b6 100644 |
--- a/src/ports/SkFontMgr_fontconfig.cpp |
+++ b/src/ports/SkFontMgr_fontconfig.cpp |
@@ -771,8 +771,9 @@ protected: |
virtual SkTypeface* onMatchFamilyStyleCharacter(const char familyName[], |
const SkFontStyle& style, |
- const char bpc47[], |
- uint32_t character) const SK_OVERRIDE |
+ const char* bcp47[], |
+ int bcpLength, |
+ SkUnichar character) const SK_OVERRIDE |
{ |
FCLocker lock; |
@@ -784,9 +785,12 @@ protected: |
FcCharSetAddChar(charSet, character); |
FcPatternAddCharSet(pattern, FC_CHARSET, charSet); |
- if (bpc47) { |
+ if (bcpLength > 0) { |
+ SkASSERT(bcp47); |
SkAutoFcLangSet langSet; |
- FcLangSetAdd(langSet, (const FcChar8*)bpc47); |
+ for (int i = 0; i < bcpLength; i++) { |
+ FcLangSetAdd(langSet, (const FcChar8*)bcp47[i]); |
+ } |
FcPatternAddLangSet(pattern, FC_LANG, langSet); |
} |