pe = FcPatternFindElt (pat, fe->object);
if (pe)
{
+ int j;
+ double score[NUM_MATCHER];
+
+ for (j = 0; j < NUM_MATCHER; j++)
+ score[j] = 0;
if (!FcCompareValueList (pe->object, pe->values,
fe->values, &v, 0, &result))
{
FcPatternDestroy (new);
return 0;
}
+ for (j = 0; j < NUM_MATCHER; j++)
+ if (score[j] >= 100.0)
+ {
+ FcValueList *pv;
+
+ for (pv = pe->values; pv; pv = pv->next)
+ FcPatternAdd (new, fe->object, pv->value, FcTrue);
+ break;
+ }
}
else
v = fe->values->value;
- FcPatternAdd (new, fe->object, v, FcTrue);
+ FcPatternAdd (new, fe->object, v, FcFalse);
}
for (i = 0; i < pat->num; i++)
{
else
ncs = FcCharSetCopy (ncs);
*cs = ncs;
+ FcPatternReference (node->pattern);
if (!FcFontSetAdd (fs, node->pattern))
+ {
+ FcPatternDestroy (node->pattern);
return FcFalse;
+ }
}
}
}
void
FcFontSetSortDestroy (FcFontSet *fs)
{
- fs->nfont = 0;
FcFontSetDestroy (fs);
}