fontconfig: Branch 'main'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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

New commits:
commit 2d17232a45c55cdb8d082a3bcf13d423928fcd5e
Author: Akira TAGOH <akira@xxxxxxxxx>
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



[Index of Archives]     [Fedora Fonts]     [Fedora Users]     [Fedora Cloud]     [Kernel]     [Fedora Packaging]     [Fedora Desktop]     [PAM]     [Gimp Graphics Editor]     [Yosemite News]

  Powered by Linux