# HG changeset patch # User eugeni # Date 1210537041 0 # Node ID 605722f2c1b6172e2adf15cbb30c9b8550a0fdba # Parent 38d1fdb388f9db307510c3d76a42c3a022c33874 When building font pattern, treat both ' ' and '-' as word separators. diff -r 38d1fdb388f9 -r 605722f2c1b6 libass/ass_fontconfig.c --- a/libass/ass_fontconfig.c Sun May 11 19:49:57 2008 +0000 +++ b/libass/ass_fontconfig.c Sun May 11 20:17:21 2008 +0000 @@ -105,13 +105,15 @@ // An alternative approach could be to reimplement FcFontSort // using FC_FULLNAME instead of FC_FAMILY. family_cnt = 1; - if (strchr(family, ' ')) { - char *p, *s = strdup(family); - while (p = strrchr(s, ' ')) { - *p = '\0'; - FcPatternAddString(pat, FC_FAMILY, (const FcChar8*)s); - ++ family_cnt; - } + { + char* s = strdup(family); + char* p = s + strlen(s); + while (--p > s) + if (*p == ' ' || *p == '-') { + *p = '\0'; + FcPatternAddString(pat, FC_FAMILY, (const FcChar8*)s); + ++ family_cnt; + } free(s); } FcPatternAddBool(pat, FC_OUTLINE, FcTrue);