Fix broken sort order with FcFontSort()
authorAkira TAGOH <akira@tagoh.org>
Fri, 1 Mar 2013 13:21:25 +0000 (22:21 +0900)
committerAkira TAGOH <akira@tagoh.org>
Fri, 1 Mar 2013 13:21:25 +0000 (22:21 +0900)
which was introduced by 4eab908c8679a797ac7016b77a93ee41bb11b0fc

src/fcmatch.c

index 09c1b6a..23f985a 100644 (file)
@@ -911,6 +911,13 @@ FcFontSetSort (FcConfig        *config FC_UNUSED,
                        }
                        patternLangSat[i] = FcTrue;
                        satisfies = FcTrue;
+                       /* adjust score to ensure it's not more than 10000.0
+                        * which would means the lang didn't satisfy the requirements
+                        */
+                       if (nodeps[f]->score[PRI_LANG_STRONG] > 10000.0)
+                           nodeps[f]->score[PRI_LANG_STRONG] = 10000.0;
+                       if (nodeps[f]->score[PRI_LANG_WEAK] > 10000.0)
+                           nodeps[f]->score[PRI_LANG_WEAK] = 10000.0;
                        break;
                    }
                }