From: eugeni Date: Thu, 13 Jul 2006 18:49:06 +0000 (+0000) Subject: Use FcPatternAdd-Type instead of FcNameParse. The latter, as it turns out, requires... X-Git-Tag: 0.9.7~505 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e80b3dfe8a891db190044c6ed56f2da6d66364e4;p=libass Use FcPatternAdd-Type instead of FcNameParse. The latter, as it turns out, requires escaping of some characters ('-', maybe more). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19068 b3059339-0415-0410-9bf9-f77b7e298cf2 --- diff --git a/libass/ass_fontconfig.c b/libass/ass_fontconfig.c index ee58d08..83ec03e 100644 --- a/libass/ass_fontconfig.c +++ b/libass/ass_fontconfig.c @@ -43,16 +43,18 @@ static char* _select_font(fc_instance_t* priv, const char* family, unsigned bold int val_i; FcChar8* val_s; FcBool val_b; - char buf[2000]; *index = 0; - snprintf(buf, 2000, "%s:outline=True:slant=%u:weight=%u", family, italic, bold); - - pat = FcNameParse((const FcChar8*)buf); + pat = FcPatternCreate(); if (!pat) return 0; + FcPatternAddString(pat, FC_FAMILY, (const FcChar8*)family); + FcPatternAddBool(pat, FC_OUTLINE, FcTrue); + FcPatternAddInteger(pat, FC_SLANT, italic); + FcPatternAddInteger(pat, FC_WEIGHT, bold); + FcDefaultSubstitute(pat); rc = FcConfigSubstitute(priv->config, pat, FcMatchPattern);