[Fontconfig] fontconfig: Branch 'main'

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Oct 8 09:52:26 UTC 2021


 src/fcmatch.c |    8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

New commits:
commit 2d17232a45c55cdb8d082a3bcf13d423928fcd5e
Author: Akira TAGOH <akira at tagoh.org>
Date:   Fri Oct 8 18:29:48 2021 +0900

    Fix score estimation for postscriptname
    
    Before this fix:
    $ fc-match :postscriptname=LiberationSans
    LiberationSansNarrow.ttf: "Liberation Sans Narrow" "Regular"
    
    After this fix:
    $ fc-match :postscriptname=LiberationSans
    LiberationSans-Regular.ttf: "Liberation Sans" "Regular"
    
    See https://bugzilla.redhat.com/show_bug.cgi?id=1946871

diff --git a/src/fcmatch.c b/src/fcmatch.c
index 80d5687..cf0876c 100644
--- a/src/fcmatch.c
+++ b/src/fcmatch.c
@@ -86,7 +86,7 @@ FcComparePostScript (const FcValue *v1, const FcValue *v2, FcValue *bestValue)
     const FcChar8 *v1_string = FcValueString (v1);
     const FcChar8 *v2_string = FcValueString (v2);
     int n;
-    size_t len;
+    size_t len1, len2, mlen;
 
     *bestValue = FcValueCanonicalize (v2);
 
@@ -95,9 +95,11 @@ FcComparePostScript (const FcValue *v1, const FcValue *v2, FcValue *bestValue)
 	return 1.0;
 
     n = FcStrMatchIgnoreCaseAndDelims (v1_string, v2_string, (const FcChar8 *)" -");
-    len = strlen ((const char *)v1_string);
+    len1 = strlen ((const char *)v1_string);
+    len2 = strlen ((const char *)v2_string);
+    mlen = FC_MAX (len1, len2);
 
-    return (double)(len - n) / (double)len;
+    return (double)(mlen - n) / (double)mlen;
 }
 
 static double


More information about the Fontconfig mailing list