Index: src/ports/SkFontMgr_fontconfig.cpp |
diff --git a/src/ports/SkFontMgr_fontconfig.cpp b/src/ports/SkFontMgr_fontconfig.cpp |
index 6fc1f28c89bc318ce2d26622b5acf94f0da295ef..95560a70516fc64ca726009fbb343a7744d877a2 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, |
+ size_t 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 (size_t i = 0; i < bcpLength; i++) { |
+ FcLangSetAdd(langSet, (const FcChar8*)bcp47[i]); |
+ } |
FcPatternAddLangSet(pattern, FC_LANG, langSet); |
} |