[fcmatch] When matching, reserve score 0 for when elements don't exist

Previously an index j was added to element score to prefer matches earlier
in the value list to the later ones.  This index started from 0, meaning
that the score zero could be generated for the first element.  By starting
j from one, scores for when the element exists in both pattern and font
can never be zero.  The score zero is reserved for when the element is
NOT available in both font and pattern.  We will use this property later.

This shouldn't change matching much.  The only difference I can think of
is that if a font family exists both as a bitmap font and a scalable
version, and when requesting it at the size of the bitmap version,
previously the font returned was nondeterministic.  Now the scalable
version will always be preferred.
This commit is contained in:
Behdad Esfahbod 2008-12-31 19:44:32 -05:00
parent c7641f2872
commit a5a384c5ff
1 changed files with 1 additions and 1 deletions

View File

@ -317,7 +317,7 @@ FcCompareValueList (FcObject object,
best = 1e99;
bestStrong = 1e99;
bestWeak = 1e99;
j = 0;
j = 1;
for (v1 = v1orig; v1; v1 = FcValueListNext(v1))
{
for (v2 = v2orig; v2; v2 = FcValueListNext(v2))