mirror of https://github.com/mpv-player/mpv
Rewrite font family check in a simpler way.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26647 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
9a20a76b06
commit
cbf77e3e9f
|
@ -67,7 +67,7 @@ static char* _select_font(fc_instance_t* priv, const char* family, unsigned bold
|
|||
FcResult result;
|
||||
FcPattern *pat = 0, *rpat;
|
||||
int r_index;
|
||||
FcChar8 *r_family, *r_style, *r_file;
|
||||
FcChar8 *r_family, *r_style, *r_file, *r_fullname;
|
||||
FcBool r_outline;
|
||||
FcCharSet* r_charset;
|
||||
FcFontSet* fset = 0;
|
||||
|
@ -147,15 +147,16 @@ static char* _select_font(fc_instance_t* priv, const char* family, unsigned bold
|
|||
|
||||
result = FcPatternGetString(rpat, FC_FAMILY, 0, &r_family);
|
||||
if (result != FcResultMatch)
|
||||
goto error;
|
||||
r_family = NULL;
|
||||
|
||||
if (strcasecmp((const char*)r_family, family) != 0) {
|
||||
result = FcPatternGetString(rpat, FC_FULLNAME, 0, &r_family);
|
||||
if (result != FcResultMatch || strcasecmp((const char*)r_family, family) != 0)
|
||||
result = FcPatternGetString(rpat, FC_FULLNAME, 0, &r_fullname);
|
||||
if (result != FcResultMatch)
|
||||
r_fullname = NULL;
|
||||
|
||||
if (!(r_family && strcasecmp((const char*)r_family, family) == 0) &&
|
||||
!(r_fullname && strcasecmp((const char*)r_fullname, family) == 0))
|
||||
mp_msg(MSGT_ASS, MSGL_WARN, MSGTR_LIBASS_SelectedFontFamilyIsNotTheRequestedOne,
|
||||
(const char*)r_family, family);
|
||||
}
|
||||
|
||||
(const char*)(r_family ? r_family : r_fullname), family);
|
||||
error:
|
||||
if (pat) FcPatternDestroy(pat);
|
||||
if (fset) FcFontSetDestroy(fset);
|
||||
|
|
Loading…
Reference in New Issue