Tue May 19 19:47:49 UTC 2020

a/shadow-4.8.1-x86_64-8.txz:  Rebuilt.
  It seems that /etc/suauth is not supported when PAM is in use, even if
  configure.ac is hacked to enable it. I've removed the man pages for it,
  and would suggest using sudo as a replacement.
l/libexif-0.6.22-x86_64-1.txz:  Upgraded.
  This update fixes bugs and security issues:
  CVE-2018-20030: Fix for recursion DoS
  CVE-2020-13114: Time consumption DoS when parsing canon array markers
  CVE-2020-13113: Potential use of uninitialized memory
  CVE-2020-13112: Various buffer overread fixes due to integer overflows
                  in maker notes
  CVE-2020-0093:  read overflow
  CVE-2019-9278:  replaced integer overflow checks the compiler could
                  optimize away by safer constructs
  CVE-2020-12767: fixed division by zero
  CVE-2016-6328:  fixed integer overflow when parsing maker notes
  CVE-2017-7544:  fixed buffer overread
  For more information, see:
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-20030
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-13114
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-13113
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-13112
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-0093
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-9278
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-12767
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-6328
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-7544
  (* Security fix *)
l/oniguruma-6.9.5_rev1-x86_64-2.txz:  Rebuilt.
  Rebuilt with --enable-posix-api. Thanks to MisterL.
l/python-packaging-20.4-x86_64-1.txz:  Upgraded.
n/bind-9.16.3-x86_64-1.txz:  Upgraded.
  This update fixes a security issue:
  A malicious actor who intentionally exploits the lack of effective
  limitation on the number of fetches performed when processing referrals
  can, through the use of specially crafted referrals, cause a recursing
  server to issue a very large number of fetches in an attempt to process
  the referral. This has at least two potential effects: The performance of
  the recursing server can potentially be degraded by the additional work
  required to perform these fetches, and the attacker can exploit this
  behavior to use the recursing server as a reflector in a reflection attack
  with a high amplification factor.
  For more information, see:
    https://kb.isc.org/docs/cve-2020-8616
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-8616
  (* Security fix *)
x/fontconfig-2.13.92-x86_64-1.txz:  Upgraded.
x/xf86-input-libinput-0.30.0-x86_64-1.txz:  Upgraded.
This commit is contained in:
Patrick J Volkerding 2020-05-19 19:47:49 +00:00 committed by Eric Hameleers
parent bb7dc1ffb7
commit 26cd2dd0d1
26 changed files with 3170 additions and 102 deletions

View file

@ -11,9 +11,67 @@
<description>Tracking Slackware development in git.</description>
<language>en-us</language>
<id xmlns="http://www.w3.org/2005/Atom">urn:uuid:c964f45e-6732-11e8-bbe5-107b4450212f</id>
<pubDate>Mon, 18 May 2020 23:30:26 GMT</pubDate>
<lastBuildDate>Tue, 19 May 2020 06:59:47 GMT</lastBuildDate>
<pubDate>Tue, 19 May 2020 19:47:49 GMT</pubDate>
<lastBuildDate>Wed, 20 May 2020 06:59:58 GMT</lastBuildDate>
<generator>maintain_current_git.sh v 1.11</generator>
<item>
<title>Tue, 19 May 2020 19:47:49 GMT</title>
<pubDate>Tue, 19 May 2020 19:47:49 GMT</pubDate>
<link>https://git.slackware.nl/current/tag/?h=20200519194749</link>
<guid isPermaLink="false">20200519194749</guid>
<description>
<![CDATA[<pre>
a/shadow-4.8.1-x86_64-8.txz: Rebuilt.
It seems that /etc/suauth is not supported when PAM is in use, even if
configure.ac is hacked to enable it. I've removed the man pages for it,
and would suggest using sudo as a replacement.
l/libexif-0.6.22-x86_64-1.txz: Upgraded.
This update fixes bugs and security issues:
CVE-2018-20030: Fix for recursion DoS
CVE-2020-13114: Time consumption DoS when parsing canon array markers
CVE-2020-13113: Potential use of uninitialized memory
CVE-2020-13112: Various buffer overread fixes due to integer overflows
in maker notes
CVE-2020-0093: read overflow
CVE-2019-9278: replaced integer overflow checks the compiler could
optimize away by safer constructs
CVE-2020-12767: fixed division by zero
CVE-2016-6328: fixed integer overflow when parsing maker notes
CVE-2017-7544: fixed buffer overread
For more information, see:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-20030
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-13114
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-13113
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-13112
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-0093
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-9278
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-12767
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-6328
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-7544
(* Security fix *)
l/oniguruma-6.9.5_rev1-x86_64-2.txz: Rebuilt.
Rebuilt with --enable-posix-api. Thanks to MisterL.
l/python-packaging-20.4-x86_64-1.txz: Upgraded.
n/bind-9.16.3-x86_64-1.txz: Upgraded.
This update fixes a security issue:
A malicious actor who intentionally exploits the lack of effective
limitation on the number of fetches performed when processing referrals
can, through the use of specially crafted referrals, cause a recursing
server to issue a very large number of fetches in an attempt to process
the referral. This has at least two potential effects: The performance of
the recursing server can potentially be degraded by the additional work
required to perform these fetches, and the attacker can exploit this
behavior to use the recursing server as a reflector in a reflection attack
with a high amplification factor.
For more information, see:
https://kb.isc.org/docs/cve-2020-8616
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-8616
(* Security fix *)
x/fontconfig-2.13.92-x86_64-1.txz: Upgraded.
x/xf86-input-libinput-0.30.0-x86_64-1.txz: Upgraded.
</pre>]]>
</description>
</item>
<item>
<title>Mon, 18 May 2020 23:30:26 GMT</title>
<pubDate>Mon, 18 May 2020 23:30:26 GMT</pubDate>

View file

@ -1,3 +1,53 @@
Tue May 19 19:47:49 UTC 2020
a/shadow-4.8.1-x86_64-8.txz: Rebuilt.
It seems that /etc/suauth is not supported when PAM is in use, even if
configure.ac is hacked to enable it. I've removed the man pages for it,
and would suggest using sudo as a replacement.
l/libexif-0.6.22-x86_64-1.txz: Upgraded.
This update fixes bugs and security issues:
CVE-2018-20030: Fix for recursion DoS
CVE-2020-13114: Time consumption DoS when parsing canon array markers
CVE-2020-13113: Potential use of uninitialized memory
CVE-2020-13112: Various buffer overread fixes due to integer overflows
in maker notes
CVE-2020-0093: read overflow
CVE-2019-9278: replaced integer overflow checks the compiler could
optimize away by safer constructs
CVE-2020-12767: fixed division by zero
CVE-2016-6328: fixed integer overflow when parsing maker notes
CVE-2017-7544: fixed buffer overread
For more information, see:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-20030
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-13114
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-13113
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-13112
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-0093
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-9278
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-12767
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-6328
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-7544
(* Security fix *)
l/oniguruma-6.9.5_rev1-x86_64-2.txz: Rebuilt.
Rebuilt with --enable-posix-api. Thanks to MisterL.
l/python-packaging-20.4-x86_64-1.txz: Upgraded.
n/bind-9.16.3-x86_64-1.txz: Upgraded.
This update fixes a security issue:
A malicious actor who intentionally exploits the lack of effective
limitation on the number of fetches performed when processing referrals
can, through the use of specially crafted referrals, cause a recursing
server to issue a very large number of fetches in an attempt to process
the referral. This has at least two potential effects: The performance of
the recursing server can potentially be degraded by the additional work
required to perform these fetches, and the attacker can exploit this
behavior to use the recursing server as a reflector in a reflection attack
with a high amplification factor.
For more information, see:
https://kb.isc.org/docs/cve-2020-8616
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-8616
(* Security fix *)
x/fontconfig-2.13.92-x86_64-1.txz: Upgraded.
x/xf86-input-libinput-0.30.0-x86_64-1.txz: Upgraded.
+--------------------------+
Mon May 18 23:30:26 UTC 2020
d/Cython-0.29.18-x86_64-1.txz: Upgraded.
kde/kde-workspace-4.11.22-x86_64-8.txz: Rebuilt.

View file

@ -1,20 +1,20 @@
Mon May 18 23:42:01 UTC 2020
Tue May 19 20:10:57 UTC 2020
Here is the file list for this directory. If you are using a
mirror site and find missing or extra files in the disk
subdirectories, please have the archive administrator refresh
the mirror.
drwxr-xr-x 12 root root 4096 2020-05-18 23:30 .
drwxr-xr-x 12 root root 4096 2020-05-19 19:47 .
-rw-r--r-- 1 root root 10064 2016-06-30 18:39 ./ANNOUNCE.14_2
-rw-r--r-- 1 root root 14975 2020-02-08 21:06 ./CHANGES_AND_HINTS.TXT
-rw-r--r-- 1 root root 963511 2020-05-18 19:46 ./CHECKSUMS.md5
-rw-r--r-- 1 root root 163 2020-05-18 19:46 ./CHECKSUMS.md5.asc
-rw-r--r-- 1 root root 963604 2020-05-18 23:42 ./CHECKSUMS.md5
-rw-r--r-- 1 root root 163 2020-05-18 23:42 ./CHECKSUMS.md5.asc
-rw-r--r-- 1 root root 17976 1994-06-10 02:28 ./COPYING
-rw-r--r-- 1 root root 35147 2007-06-30 04:21 ./COPYING3
-rw-r--r-- 1 root root 19573 2016-06-23 20:08 ./COPYRIGHT.TXT
-rw-r--r-- 1 root root 616 2006-10-02 04:37 ./CRYPTO_NOTICE.TXT
-rw-r--r-- 1 root root 885395 2020-05-18 23:30 ./ChangeLog.txt
-rw-r--r-- 1 root root 888099 2020-05-19 19:47 ./ChangeLog.txt
drwxr-xr-x 3 root root 4096 2013-03-20 22:17 ./EFI
drwxr-xr-x 2 root root 4096 2020-05-17 22:58 ./EFI/BOOT
-rw-r--r-- 1 root root 1417216 2019-07-05 18:54 ./EFI/BOOT/bootx64.efi
@ -25,9 +25,9 @@ drwxr-xr-x 2 root root 4096 2020-05-17 22:58 ./EFI/BOOT
-rwxr-xr-x 1 root root 2504 2019-07-05 18:54 ./EFI/BOOT/make-grub.sh
-rw-r--r-- 1 root root 10722 2013-09-21 19:02 ./EFI/BOOT/osdetect.cfg
-rw-r--r-- 1 root root 1273 2013-08-12 21:08 ./EFI/BOOT/tools.cfg
-rw-r--r-- 1 root root 1266386 2020-05-18 19:45 ./FILELIST.TXT
-rw-r--r-- 1 root root 1266496 2020-05-18 23:42 ./FILELIST.TXT
-rw-r--r-- 1 root root 1572 2012-08-29 18:27 ./GPG-KEY
-rw-r--r-- 1 root root 752105 2020-05-18 23:39 ./PACKAGES.TXT
-rw-r--r-- 1 root root 752221 2020-05-19 20:09 ./PACKAGES.TXT
-rw-r--r-- 1 root root 8564 2016-06-28 21:33 ./README.TXT
-rw-r--r-- 1 root root 3629 2020-05-15 07:03 ./README.initrd
-rw-r--r-- 1 root root 34412 2017-12-01 17:44 ./README_CRYPT.TXT
@ -828,13 +828,13 @@ drwxr-xr-x 2 root root 4096 2012-09-20 18:06 ./patches
-rw-r--r-- 1 root root 575 2012-09-20 18:06 ./patches/FILE_LIST
-rw-r--r-- 1 root root 14 2012-09-20 18:06 ./patches/MANIFEST.bz2
-rw-r--r-- 1 root root 224 2012-09-20 18:06 ./patches/PACKAGES.TXT
drwxr-xr-x 18 root root 4096 2020-05-18 23:40 ./slackware64
-rw-r--r-- 1 root root 297246 2020-05-18 23:40 ./slackware64/CHECKSUMS.md5
-rw-r--r-- 1 root root 163 2020-05-18 23:40 ./slackware64/CHECKSUMS.md5.asc
-rw-r--r-- 1 root root 370093 2020-05-18 23:37 ./slackware64/FILE_LIST
-rw-r--r-- 1 root root 3817906 2020-05-18 23:38 ./slackware64/MANIFEST.bz2
drwxr-xr-x 18 root root 4096 2020-05-19 20:09 ./slackware64
-rw-r--r-- 1 root root 297249 2020-05-19 20:09 ./slackware64/CHECKSUMS.md5
-rw-r--r-- 1 root root 163 2020-05-19 20:09 ./slackware64/CHECKSUMS.md5.asc
-rw-r--r-- 1 root root 370096 2020-05-19 20:06 ./slackware64/FILE_LIST
-rw-r--r-- 1 root root 3818241 2020-05-19 20:07 ./slackware64/MANIFEST.bz2
lrwxrwxrwx 1 root root 15 2009-08-23 23:34 ./slackware64/PACKAGES.TXT -> ../PACKAGES.TXT
drwxr-xr-x 2 root root 28672 2020-05-18 19:40 ./slackware64/a
drwxr-xr-x 2 root root 28672 2020-05-19 20:06 ./slackware64/a
-rw-r--r-- 1 root root 327 2018-06-24 18:44 ./slackware64/a/aaa_base-14.2-x86_64-5.txt
-rw-r--r-- 1 root root 10820 2018-06-24 18:44 ./slackware64/a/aaa_base-14.2-x86_64-5.txz
-rw-r--r-- 1 root root 163 2018-06-24 18:44 ./slackware64/a/aaa_base-14.2-x86_64-5.txz.asc
@ -1115,9 +1115,9 @@ drwxr-xr-x 2 root root 28672 2020-05-18 19:40 ./slackware64/a
-rw-r--r-- 1 root root 406 2020-01-15 17:44 ./slackware64/a/sed-4.8-x86_64-1.txt
-rw-r--r-- 1 root root 249488 2020-01-15 17:44 ./slackware64/a/sed-4.8-x86_64-1.txz
-rw-r--r-- 1 root root 163 2020-01-15 17:44 ./slackware64/a/sed-4.8-x86_64-1.txz.asc
-rw-r--r-- 1 root root 422 2020-05-16 19:48 ./slackware64/a/shadow-4.8.1-x86_64-7.txt
-rw-r--r-- 1 root root 1392896 2020-05-16 19:48 ./slackware64/a/shadow-4.8.1-x86_64-7.txz
-rw-r--r-- 1 root root 163 2020-05-16 19:48 ./slackware64/a/shadow-4.8.1-x86_64-7.txz.asc
-rw-r--r-- 1 root root 422 2020-05-19 18:57 ./slackware64/a/shadow-4.8.1-x86_64-8.txt
-rw-r--r-- 1 root root 1376432 2020-05-19 18:57 ./slackware64/a/shadow-4.8.1-x86_64-8.txz
-rw-r--r-- 1 root root 163 2020-05-19 18:57 ./slackware64/a/shadow-4.8.1-x86_64-8.txz.asc
-rw-r--r-- 1 root root 623 2018-04-13 13:12 ./slackware64/a/sharutils-4.15.2-x86_64-2.txt
-rw-r--r-- 1 root root 264912 2018-04-13 13:12 ./slackware64/a/sharutils-4.15.2-x86_64-2.txz
-rw-r--r-- 1 root root 163 2018-04-13 13:12 ./slackware64/a/sharutils-4.15.2-x86_64-2.txz.asc
@ -2520,7 +2520,7 @@ drwxr-xr-x 2 root root 20480 2016-03-10 03:11 ./slackware64/kdei
-rw-r--r-- 1 root root 7544 2018-03-01 07:54 ./slackware64/kdei/maketag
-rw-r--r-- 1 root root 7544 2018-03-01 07:54 ./slackware64/kdei/maketag.ez
-rw-r--r-- 1 root root 1500 2018-03-01 07:54 ./slackware64/kdei/tagfile
drwxr-xr-x 2 root root 69632 2020-05-18 23:37 ./slackware64/l
drwxr-xr-x 2 root root 69632 2020-05-19 20:06 ./slackware64/l
-rw-r--r-- 1 root root 338 2020-05-16 19:55 ./slackware64/l/ConsoleKit2-1.2.1-x86_64-4.txt
-rw-r--r-- 1 root root 193724 2020-05-16 19:55 ./slackware64/l/ConsoleKit2-1.2.1-x86_64-4.txz
-rw-r--r-- 1 root root 163 2020-05-16 19:55 ./slackware64/l/ConsoleKit2-1.2.1-x86_64-4.txz.asc
@ -2973,9 +2973,9 @@ drwxr-xr-x 2 root root 69632 2020-05-18 23:37 ./slackware64/l
-rw-r--r-- 1 root root 543 2019-08-02 18:22 ./slackware64/l/libevent-2.1.11-x86_64-1.txt
-rw-r--r-- 1 root root 276000 2019-08-02 18:22 ./slackware64/l/libevent-2.1.11-x86_64-1.txz
-rw-r--r-- 1 root root 163 2019-08-02 18:22 ./slackware64/l/libevent-2.1.11-x86_64-1.txz.asc
-rw-r--r-- 1 root root 396 2018-04-13 14:57 ./slackware64/l/libexif-0.6.21-x86_64-2.txt
-rw-r--r-- 1 root root 321184 2018-04-13 14:57 ./slackware64/l/libexif-0.6.21-x86_64-2.txz
-rw-r--r-- 1 root root 163 2018-04-13 14:57 ./slackware64/l/libexif-0.6.21-x86_64-2.txz.asc
-rw-r--r-- 1 root root 432 2020-05-19 17:30 ./slackware64/l/libexif-0.6.22-x86_64-1.txt
-rw-r--r-- 1 root root 389192 2020-05-19 17:30 ./slackware64/l/libexif-0.6.22-x86_64-1.txz
-rw-r--r-- 1 root root 163 2020-05-19 17:30 ./slackware64/l/libexif-0.6.22-x86_64-1.txz.asc
-rw-r--r-- 1 root root 292 2018-04-13 14:58 ./slackware64/l/libfakekey-0.3-x86_64-2.txt
-rw-r--r-- 1 root root 16608 2018-04-13 14:58 ./slackware64/l/libfakekey-0.3-x86_64-2.txz
-rw-r--r-- 1 root root 163 2018-04-13 14:58 ./slackware64/l/libfakekey-0.3-x86_64-2.txz.asc
@ -3251,9 +3251,9 @@ drwxr-xr-x 2 root root 69632 2020-05-18 23:37 ./slackware64/l
-rw-r--r-- 1 root root 411 2018-04-13 15:09 ./slackware64/l/ocl-icd-2.2.12-x86_64-2.txt
-rw-r--r-- 1 root root 30916 2018-04-13 15:09 ./slackware64/l/ocl-icd-2.2.12-x86_64-2.txz
-rw-r--r-- 1 root root 163 2018-04-13 15:09 ./slackware64/l/ocl-icd-2.2.12-x86_64-2.txz.asc
-rw-r--r-- 1 root root 459 2020-04-30 17:39 ./slackware64/l/oniguruma-6.9.5_rev1-x86_64-1.txt
-rw-r--r-- 1 root root 218500 2020-04-30 17:39 ./slackware64/l/oniguruma-6.9.5_rev1-x86_64-1.txz
-rw-r--r-- 1 root root 163 2020-04-30 17:39 ./slackware64/l/oniguruma-6.9.5_rev1-x86_64-1.txz.asc
-rw-r--r-- 1 root root 459 2020-05-19 17:59 ./slackware64/l/oniguruma-6.9.5_rev1-x86_64-2.txt
-rw-r--r-- 1 root root 219836 2020-05-19 17:59 ./slackware64/l/oniguruma-6.9.5_rev1-x86_64-2.txz
-rw-r--r-- 1 root root 163 2020-05-19 17:59 ./slackware64/l/oniguruma-6.9.5_rev1-x86_64-2.txz.asc
-rw-r--r-- 1 root root 463 2020-02-16 05:22 ./slackware64/l/openal-soft-1.20.1-x86_64-1.txt
-rw-r--r-- 1 root root 748300 2020-02-16 05:22 ./slackware64/l/openal-soft-1.20.1-x86_64-1.txz
-rw-r--r-- 1 root root 163 2020-02-16 05:22 ./slackware64/l/openal-soft-1.20.1-x86_64-1.txz.asc
@ -3362,9 +3362,9 @@ drwxr-xr-x 2 root root 69632 2020-05-18 23:37 ./slackware64/l
-rw-r--r-- 1 root root 502 2020-05-01 03:59 ./slackware64/l/python-notify2-0.3.1-x86_64-5.txt
-rw-r--r-- 1 root root 9172 2020-05-01 03:59 ./slackware64/l/python-notify2-0.3.1-x86_64-5.txz
-rw-r--r-- 1 root root 163 2020-05-01 03:59 ./slackware64/l/python-notify2-0.3.1-x86_64-5.txz.asc
-rw-r--r-- 1 root root 333 2020-05-01 04:01 ./slackware64/l/python-packaging-20.3-x86_64-2.txt
-rw-r--r-- 1 root root 48548 2020-05-01 04:01 ./slackware64/l/python-packaging-20.3-x86_64-2.txz
-rw-r--r-- 1 root root 163 2020-05-01 04:01 ./slackware64/l/python-packaging-20.3-x86_64-2.txz.asc
-rw-r--r-- 1 root root 333 2020-05-19 17:37 ./slackware64/l/python-packaging-20.4-x86_64-1.txt
-rw-r--r-- 1 root root 49216 2020-05-19 17:37 ./slackware64/l/python-packaging-20.4-x86_64-1.txz
-rw-r--r-- 1 root root 163 2020-05-19 17:37 ./slackware64/l/python-packaging-20.4-x86_64-1.txz.asc
-rw-r--r-- 1 root root 526 2020-05-03 01:50 ./slackware64/l/python-pillow-7.1.2-x86_64-1.txt
-rw-r--r-- 1 root root 633852 2020-05-03 01:50 ./slackware64/l/python-pillow-7.1.2-x86_64-1.txz
-rw-r--r-- 1 root root 163 2020-05-03 01:50 ./slackware64/l/python-pillow-7.1.2-x86_64-1.txz.asc
@ -3531,7 +3531,7 @@ drwxr-xr-x 2 root root 69632 2020-05-18 23:37 ./slackware64/l
-rw-r--r-- 1 root root 463 2019-12-29 18:55 ./slackware64/l/zstd-1.4.4-x86_64-2.txt
-rw-r--r-- 1 root root 405812 2019-12-29 18:55 ./slackware64/l/zstd-1.4.4-x86_64-2.txz
-rw-r--r-- 1 root root 163 2019-12-29 18:55 ./slackware64/l/zstd-1.4.4-x86_64-2.txz.asc
drwxr-xr-x 2 root root 36864 2020-05-18 19:40 ./slackware64/n
drwxr-xr-x 2 root root 36864 2020-05-19 20:06 ./slackware64/n
-rw-r--r-- 1 root root 357 2020-05-10 18:00 ./slackware64/n/ModemManager-1.12.10-x86_64-1.txt
-rw-r--r-- 1 root root 1806496 2020-05-10 18:00 ./slackware64/n/ModemManager-1.12.10-x86_64-1.txz
-rw-r--r-- 1 root root 163 2020-05-10 18:00 ./slackware64/n/ModemManager-1.12.10-x86_64-1.txz.asc
@ -3547,9 +3547,9 @@ drwxr-xr-x 2 root root 36864 2020-05-18 19:40 ./slackware64/n
-rw-r--r-- 1 root root 683 2018-04-13 15:29 ./slackware64/n/biff+comsat-0.17-x86_64-2.txt
-rw-r--r-- 1 root root 11216 2018-04-13 15:29 ./slackware64/n/biff+comsat-0.17-x86_64-2.txz
-rw-r--r-- 1 root root 163 2018-04-13 15:29 ./slackware64/n/biff+comsat-0.17-x86_64-2.txz.asc
-rw-r--r-- 1 root root 334 2020-04-15 18:45 ./slackware64/n/bind-9.16.2-x86_64-1.txt
-rw-r--r-- 1 root root 2272212 2020-04-15 18:45 ./slackware64/n/bind-9.16.2-x86_64-1.txz
-rw-r--r-- 1 root root 163 2020-04-15 18:45 ./slackware64/n/bind-9.16.2-x86_64-1.txz.asc
-rw-r--r-- 1 root root 334 2020-05-19 17:29 ./slackware64/n/bind-9.16.3-x86_64-1.txt
-rw-r--r-- 1 root root 2276168 2020-05-19 17:29 ./slackware64/n/bind-9.16.3-x86_64-1.txz
-rw-r--r-- 1 root root 163 2020-05-19 17:29 ./slackware64/n/bind-9.16.3-x86_64-1.txz.asc
-rw-r--r-- 1 root root 333 2020-03-15 18:37 ./slackware64/n/bluez-5.54-x86_64-1.txt
-rw-r--r-- 1 root root 1113904 2020-03-15 18:37 ./slackware64/n/bluez-5.54-x86_64-1.txz
-rw-r--r-- 1 root root 163 2020-03-15 18:37 ./slackware64/n/bluez-5.54-x86_64-1.txz.asc
@ -4023,7 +4023,7 @@ drwxr-xr-x 2 root root 4096 2020-04-05 21:10 ./slackware64/tcl
-rw-r--r-- 1 root root 227 2019-11-22 21:51 ./slackware64/tcl/tk-8.6.10-x86_64-1.txt
-rw-r--r-- 1 root root 1780348 2019-11-22 21:51 ./slackware64/tcl/tk-8.6.10-x86_64-1.txz
-rw-r--r-- 1 root root 163 2019-11-22 21:51 ./slackware64/tcl/tk-8.6.10-x86_64-1.txz.asc
drwxr-xr-x 2 root root 65536 2020-05-18 19:40 ./slackware64/x
drwxr-xr-x 2 root root 65536 2020-05-19 20:06 ./slackware64/x
-rw-r--r-- 1 root root 257 2018-04-13 16:03 ./slackware64/x/anthy-9100h-x86_64-2.txt
-rw-r--r-- 1 root root 5074404 2018-04-13 16:03 ./slackware64/x/anthy-9100h-x86_64-2.txz
-rw-r--r-- 1 root root 163 2018-04-13 16:03 ./slackware64/x/anthy-9100h-x86_64-2.txz.asc
@ -4162,9 +4162,9 @@ drwxr-xr-x 2 root root 65536 2020-05-18 19:40 ./slackware64/x
-rw-r--r-- 1 root root 451 2018-06-06 02:14 ./slackware64/x/font-xfree86-type1-1.0.4-noarch-3.txt
-rw-r--r-- 1 root root 36508 2018-06-06 02:14 ./slackware64/x/font-xfree86-type1-1.0.4-noarch-3.txz
-rw-r--r-- 1 root root 163 2018-06-06 02:14 ./slackware64/x/font-xfree86-type1-1.0.4-noarch-3.txz.asc
-rw-r--r-- 1 root root 348 2018-09-12 19:29 ./slackware64/x/fontconfig-2.13.1-x86_64-1.txt
-rw-r--r-- 1 root root 303464 2018-09-12 19:29 ./slackware64/x/fontconfig-2.13.1-x86_64-1.txz
-rw-r--r-- 1 root root 163 2018-09-12 19:29 ./slackware64/x/fontconfig-2.13.1-x86_64-1.txz.asc
-rw-r--r-- 1 root root 385 2020-05-19 18:39 ./slackware64/x/fontconfig-2.13.92-x86_64-1.txt
-rw-r--r-- 1 root root 315392 2020-05-19 18:39 ./slackware64/x/fontconfig-2.13.92-x86_64-1.txz
-rw-r--r-- 1 root root 163 2020-05-19 18:39 ./slackware64/x/fontconfig-2.13.92-x86_64-1.txz.asc
-rw-r--r-- 1 root root 372 2020-01-06 18:34 ./slackware64/x/fonttosfnt-1.1.0-x86_64-1.txt
-rw-r--r-- 1 root root 31540 2020-01-06 18:34 ./slackware64/x/fonttosfnt-1.1.0-x86_64-1.txz
-rw-r--r-- 1 root root 163 2020-01-06 18:34 ./slackware64/x/fonttosfnt-1.1.0-x86_64-1.txz.asc
@ -4605,9 +4605,9 @@ drwxr-xr-x 2 root root 65536 2020-05-18 19:40 ./slackware64/x
-rw-r--r-- 1 root root 475 2018-05-11 23:28 ./slackware64/x/xf86-input-keyboard-1.9.0-x86_64-3.txt
-rw-r--r-- 1 root root 26076 2018-05-11 23:28 ./slackware64/x/xf86-input-keyboard-1.9.0-x86_64-3.txz
-rw-r--r-- 1 root root 163 2018-05-11 23:28 ./slackware64/x/xf86-input-keyboard-1.9.0-x86_64-3.txz.asc
-rw-r--r-- 1 root root 468 2019-08-12 20:56 ./slackware64/x/xf86-input-libinput-0.29.0-x86_64-1.txt
-rw-r--r-- 1 root root 50152 2019-08-12 20:56 ./slackware64/x/xf86-input-libinput-0.29.0-x86_64-1.txz
-rw-r--r-- 1 root root 163 2019-08-12 20:56 ./slackware64/x/xf86-input-libinput-0.29.0-x86_64-1.txz.asc
-rw-r--r-- 1 root root 468 2020-05-19 19:21 ./slackware64/x/xf86-input-libinput-0.30.0-x86_64-1.txt
-rw-r--r-- 1 root root 50508 2020-05-19 19:21 ./slackware64/x/xf86-input-libinput-0.30.0-x86_64-1.txz
-rw-r--r-- 1 root root 163 2020-05-19 19:21 ./slackware64/x/xf86-input-libinput-0.30.0-x86_64-1.txz.asc
-rw-r--r-- 1 root root 428 2018-06-19 18:00 ./slackware64/x/xf86-input-mouse-1.9.3-x86_64-1.txt
-rw-r--r-- 1 root root 49684 2018-06-19 18:00 ./slackware64/x/xf86-input-mouse-1.9.3-x86_64-1.txz
-rw-r--r-- 1 root root 163 2018-06-19 18:00 ./slackware64/x/xf86-input-mouse-1.9.3-x86_64-1.txz.asc
@ -5139,11 +5139,11 @@ drwxr-xr-x 2 root root 4096 2019-02-17 23:51 ./slackware64/y
-rw-r--r-- 1 root root 1147 2018-03-01 07:55 ./slackware64/y/maketag
-rw-r--r-- 1 root root 1147 2018-03-01 07:55 ./slackware64/y/maketag.ez
-rw-r--r-- 1 root root 14 2018-03-01 07:55 ./slackware64/y/tagfile
drwxr-xr-x 19 root root 4096 2020-05-18 23:42 ./source
-rw-r--r-- 1 root root 495649 2020-05-18 23:42 ./source/CHECKSUMS.md5
-rw-r--r-- 1 root root 163 2020-05-18 23:42 ./source/CHECKSUMS.md5.asc
-rw-r--r-- 1 root root 697791 2020-05-18 23:41 ./source/FILE_LIST
-rw-r--r-- 1 root root 20786602 2020-05-18 23:41 ./source/MANIFEST.bz2
drwxr-xr-x 19 root root 4096 2020-05-19 20:10 ./source
-rw-r--r-- 1 root root 497055 2020-05-19 20:10 ./source/CHECKSUMS.md5
-rw-r--r-- 1 root root 163 2020-05-19 20:10 ./source/CHECKSUMS.md5.asc
-rw-r--r-- 1 root root 699457 2020-05-19 20:10 ./source/FILE_LIST
-rw-r--r-- 1 root root 20797725 2020-05-19 20:10 ./source/MANIFEST.bz2
-rw-r--r-- 1 root root 1314 2006-10-02 04:40 ./source/README.TXT
drwxr-xr-x 115 root root 4096 2020-05-17 23:32 ./source/a
-rw-r--r-- 1 root root 1034 2019-05-04 17:56 ./source/a/FTBFSlog
@ -5968,7 +5968,7 @@ drwxr-xr-x 2 root root 4096 2020-05-08 19:34 ./source/a/shadow/pam.d-su
-rw-r--r-- 1 root root 1611196 2020-01-24 21:43 ./source/a/shadow/shadow-4.8.1.tar.xz
-rw-r--r-- 1 root root 488 2020-01-24 21:45 ./source/a/shadow/shadow-4.8.1.tar.xz.asc
-rw-r--r-- 1 root root 734 2013-12-14 21:05 ./source/a/shadow/shadow.CVE-2005-4890.relax.diff.gz
-rwxr-xr-x 1 root root 8256 2020-05-16 19:32 ./source/a/shadow/shadow.SlackBuild
-rwxr-xr-x 1 root root 8499 2020-05-19 18:54 ./source/a/shadow/shadow.SlackBuild
-rw-r--r-- 1 root root 522 2020-02-06 23:30 ./source/a/shadow/shadow.login.display.short.hostname.diff.gz
-rw-r--r-- 1 root root 39 2019-06-17 02:57 ./source/a/shadow/shadow.url
-rw-r--r-- 1 root root 876 2018-11-09 20:31 ./source/a/shadow/slack-desc
@ -9208,11 +9208,12 @@ drwxr-xr-x 2 root root 4096 2019-09-29 23:48 ./source/l/libevent
-rw-r--r-- 1 root root 746646 2019-08-01 21:44 ./source/l/libevent/libevent-2.1.11-stable.tar.lz
-rwxr-xr-x 1 root root 4571 2019-09-29 23:48 ./source/l/libevent/libevent.SlackBuild
-rw-r--r-- 1 root root 999 2018-02-27 06:12 ./source/l/libevent/slack-desc
drwxr-xr-x 2 root root 4096 2019-09-29 23:48 ./source/l/libexif
-rw-r--r-- 1 root root 899556 2012-07-12 20:35 ./source/l/libexif/libexif-0.6.21.tar.xz
-rwxr-xr-x 1 root root 3771 2019-09-29 23:48 ./source/l/libexif/libexif.SlackBuild
drwxr-xr-x 2 root root 4096 2020-05-19 17:29 ./source/l/libexif
-rw-r--r-- 1 root root 1347040 2020-05-18 19:57 ./source/l/libexif/libexif-0.6.22.tar.xz
-rwxr-xr-x 1 root root 3771 2020-05-19 17:29 ./source/l/libexif/libexif.SlackBuild
-rw-r--r-- 1 root root 197 2011-02-09 07:02 ./source/l/libexif/libexif.pc.diff.gz
-rw-r--r-- 1 root root 851 2018-02-27 06:12 ./source/l/libexif/slack-desc
-rw-r--r-- 1 root root 36 2020-05-19 17:28 ./source/l/libexif/libexif.url
-rw-r--r-- 1 root root 887 2020-05-19 17:27 ./source/l/libexif/slack-desc
drwxr-xr-x 2 root root 4096 2019-09-29 23:48 ./source/l/libfakekey
-rw-r--r-- 1 root root 9288 2017-11-24 22:31 ./source/l/libfakekey/libfakekey-0.3.tar.xz
-rwxr-xr-x 1 root root 3740 2019-09-29 23:48 ./source/l/libfakekey/libfakekey.SlackBuild
@ -9713,7 +9714,7 @@ drwxr-xr-x 2 root root 4096 2019-09-29 23:48 ./source/l/ocl-icd
-rw-r--r-- 1 root root 898 2018-02-27 06:12 ./source/l/ocl-icd/slack-desc
drwxr-xr-x 2 root root 4096 2020-04-30 17:38 ./source/l/oniguruma
-rw-r--r-- 1 root root 372788 2020-04-26 07:20 ./source/l/oniguruma/oniguruma-6.9.5_rev1.tar.lz
-rwxr-xr-x 1 root root 4159 2020-04-20 19:41 ./source/l/oniguruma/oniguruma.SlackBuild
-rwxr-xr-x 1 root root 4182 2020-05-19 17:59 ./source/l/oniguruma/oniguruma.SlackBuild
-rw-r--r-- 1 root root 916 2019-12-01 18:11 ./source/l/oniguruma/slack-desc
drwxr-xr-x 2 root root 4096 2020-02-16 05:22 ./source/l/openal-soft
-rw-r--r-- 1 root root 275 2020-02-12 22:38 ./source/l/openal-soft/doinst.sh.gz
@ -9899,10 +9900,10 @@ drwxr-xr-x 2 root root 4096 2019-12-29 19:15 ./source/l/python-notify2
-rwxr-xr-x 1 root root 2573 2020-05-01 03:59 ./source/l/python-notify2/python-notify2.SlackBuild
-rw-r--r-- 1 root root 37 2018-02-23 21:12 ./source/l/python-notify2/python-notify2.url
-rw-r--r-- 1 root root 996 2018-02-27 06:12 ./source/l/python-notify2/slack-desc
drwxr-xr-x 2 root root 4096 2020-03-06 01:41 ./source/l/python-packaging
-rw-r--r-- 1 root root 56432 2020-03-05 07:48 ./source/l/python-packaging/packaging-20.3.tar.lz
drwxr-xr-x 2 root root 4096 2020-05-19 17:36 ./source/l/python-packaging
-rw-r--r-- 1 root root 57322 2020-05-19 06:30 ./source/l/python-packaging/packaging-20.4.tar.lz
-rw-r--r-- 1 root root 36 2020-01-25 18:33 ./source/l/python-packaging/packaging.url
-rwxr-xr-x 1 root root 2904 2020-05-01 04:00 ./source/l/python-packaging/python-packaging.SlackBuild
-rwxr-xr-x 1 root root 2904 2020-05-19 17:36 ./source/l/python-packaging/python-packaging.SlackBuild
-rw-r--r-- 1 root root 829 2018-08-27 18:22 ./source/l/python-packaging/slack-desc
drwxr-xr-x 2 root root 4096 2020-05-03 01:49 ./source/l/python-pillow
-rw-r--r-- 1 root root 572136 2020-05-03 01:48 ./source/l/python-pillow/Pillow-7.1.2.tar.lz
@ -10345,13 +10346,13 @@ drwxr-xr-x 2 root root 4096 2019-09-29 23:48 ./source/n/biff+comsat
-rw-r--r-- 1 root root 729 2004-06-21 20:51 ./source/n/biff+comsat/biff+comsat.badutmp.diff.gz
-rw-r--r-- 1 root root 1222 2001-06-03 08:32 ./source/n/biff+comsat/biff+comsat.offset.diff.gz
-rw-r--r-- 1 root root 1142 2018-02-27 06:13 ./source/n/biff+comsat/slack-desc
drwxr-xr-x 3 root root 4096 2020-04-15 18:41 ./source/n/bind
drwxr-xr-x 3 root root 4096 2020-05-19 17:26 ./source/n/bind
-rw-r--r-- 1 root root 5120 2007-06-08 04:48 ./source/n/bind/3link.sh
-rw-r--r-- 1 root root 4559216 2020-04-15 16:39 ./source/n/bind/bind-9.16.2.tar.xz
-rw-r--r-- 1 root root 874 2020-04-15 16:39 ./source/n/bind/bind-9.16.2.tar.xz.asc
-rw-r--r-- 1 root root 874 2020-04-15 16:39 ./source/n/bind/bind-9.16.2.tar.xz.sha1.asc
-rw-r--r-- 1 root root 874 2020-04-15 16:39 ./source/n/bind/bind-9.16.2.tar.xz.sha256.asc
-rw-r--r-- 1 root root 874 2020-04-15 16:39 ./source/n/bind/bind-9.16.2.tar.xz.sha512.asc
-rw-r--r-- 1 root root 4573044 2020-05-19 07:49 ./source/n/bind/bind-9.16.3.tar.xz
-rw-r--r-- 1 root root 833 2020-05-19 07:49 ./source/n/bind/bind-9.16.3.tar.xz.asc
-rw-r--r-- 1 root root 833 2020-05-19 07:49 ./source/n/bind/bind-9.16.3.tar.xz.sha1.asc
-rw-r--r-- 1 root root 833 2020-05-19 07:49 ./source/n/bind/bind-9.16.3.tar.xz.sha256.asc
-rw-r--r-- 1 root root 833 2020-05-19 07:49 ./source/n/bind/bind-9.16.3.tar.xz.sha512.asc
-rwxr-xr-x 1 root root 5385 2020-03-18 17:56 ./source/n/bind/bind.SlackBuild
drwxr-xr-x 2 root root 4096 2019-08-19 18:12 ./source/n/bind/caching-example
-rw-r--r-- 1 root root 195 2001-05-18 02:03 ./source/n/bind/caching-example/localhost.zone
@ -11460,7 +11461,7 @@ drwxr-xr-x 2 root root 4096 2019-11-22 21:49 ./source/tcl/tk
-rw-r--r-- 1 root root 677 2018-11-16 18:36 ./source/tcl/tk/slack-desc
-rwxr-xr-x 1 root root 4428 2019-11-22 21:51 ./source/tcl/tk/tk.SlackBuild
-rw-r--r-- 1 root root 2944580 2019-11-21 19:49 ./source/tcl/tk/tk8.6.10-src.tar.lz
drwxr-xr-x 53 root root 4096 2020-03-25 18:14 ./source/x
drwxr-xr-x 53 root root 4096 2020-05-19 18:38 ./source/x
-rw-r--r-- 1 root root 958 2019-10-12 17:05 ./source/x/FTBFSlog
drwxr-xr-x 2 root root 4096 2019-09-29 23:48 ./source/x/anthy
-rw-r--r-- 1 root root 3198760 2009-02-07 16:33 ./source/x/anthy/anthy-9100h.tar.xz
@ -11475,15 +11476,30 @@ drwxr-xr-x 2 root root 4096 2019-09-29 23:48 ./source/x/dejavu-fonts-ttf
-rwxr-xr-x 1 root root 2983 2019-09-29 23:48 ./source/x/dejavu-fonts-ttf/dejavu-fonts-ttf.SlackBuild
-rw-r--r-- 1 root root 169 2018-06-05 22:36 ./source/x/dejavu-fonts-ttf/doinst.sh.gz
-rw-r--r-- 1 root root 904 2018-02-27 06:13 ./source/x/dejavu-fonts-ttf/slack-desc
drwxr-xr-x 2 root root 4096 2019-09-29 23:48 ./source/x/fontconfig
drwxr-xr-x 3 root root 4096 2020-05-19 18:10 ./source/x/fontconfig
-rw-r--r-- 1 root root 139 2013-02-28 21:07 ./source/x/fontconfig/doinst.sh.gz
-rw-r--r-- 1 root root 1362948 2018-08-30 08:27 ./source/x/fontconfig/fontconfig-2.13.1.tar.lz
-rwxr-xr-x 1 root root 6545 2019-09-29 23:48 ./source/x/fontconfig/fontconfig.SlackBuild
drwxr-xr-x 2 root root 4096 2020-05-19 17:42 ./source/x/fontconfig/fedora-patches
-rw-r--r-- 1 root root 675 2020-04-23 09:20 ./source/x/fontconfig/fedora-patches/fontconfig-0-timestamp-dir-on-sb.patch.gz
-rw-r--r-- 1 root root 438 2020-04-23 09:20 ./source/x/fontconfig/fedora-patches/fontconfig-drop-lang-from-pkgkit-format.patch.gz
-rw-r--r-- 1 root root 1969 2020-04-23 09:20 ./source/x/fontconfig/fedora-patches/fontconfig-fix-1744377.patch.gz
-rw-r--r-- 1 root root 1629 2020-04-23 09:20 ./source/x/fontconfig/fedora-patches/fontconfig-fix-assertion.patch.gz
-rw-r--r-- 1 root root 2275 2020-04-23 09:20 ./source/x/fontconfig/fedora-patches/fontconfig-fix-dtd-id.patch.gz
-rw-r--r-- 1 root root 452 2020-04-23 09:20 ./source/x/fontconfig/fedora-patches/fontconfig-fix-dtd.patch.gz
-rw-r--r-- 1 root root 814 2020-04-23 09:20 ./source/x/fontconfig/fedora-patches/fontconfig-fix-test.patch.gz
-rw-r--r-- 1 root root 9115 2020-04-23 09:20 ./source/x/fontconfig/fedora-patches/fontconfig-mt.patch.gz
-rw-r--r-- 1 root root 2578 2020-04-23 09:20 ./source/x/fontconfig/fedora-patches/fontconfig-read-latest-cache.patch.gz
-rw-r--r-- 1 root root 419 2020-04-23 09:20 ./source/x/fontconfig/fedora-patches/fontconfig-required-freetype-version.patch.gz
-rw-r--r-- 1 root root 622 2020-04-23 09:20 ./source/x/fontconfig/fedora-patches/fontconfig-score-hint-on-match.patch.gz
-rw-r--r-- 1 root root 326 2020-04-23 09:20 ./source/x/fontconfig/fedora-patches/fontconfig-sleep-less.patch.gz
-rw-r--r-- 1 root root 2714 2020-04-23 09:20 ./source/x/fontconfig/fedora-patches/fontconfig-sysroot.patch.gz
-rw-r--r-- 1 root root 1413128 2019-08-09 11:17 ./source/x/fontconfig/fontconfig-2.13.92.tar.xz
-rwxr-xr-x 1 root root 7824 2020-05-19 18:38 ./source/x/fontconfig/fontconfig.SlackBuild
-rw-r--r-- 1 root root 340 2017-04-30 19:35 ./source/x/fontconfig/fontconfig.dejavu.diff.gz
-rw-r--r-- 1 root root 574 2013-03-01 04:32 ./source/x/fontconfig/fontconfig.font.dir.list.diff.gz
-rw-r--r-- 1 root root 346 2017-04-30 19:19 ./source/x/fontconfig/fontconfig.liberation.diff.gz
-rw-r--r-- 1 root root 30 2020-05-19 02:12 ./source/x/fontconfig/fontconfig.url
-rw-r--r-- 1 root root 657 2007-01-25 05:00 ./source/x/fontconfig/setup.05.fontconfig
-rw-r--r-- 1 root root 806 2018-02-27 06:13 ./source/x/fontconfig/slack-desc
-rw-r--r-- 1 root root 843 2020-05-19 02:09 ./source/x/fontconfig/slack-desc
drwxr-xr-x 2 root root 4096 2019-09-30 16:57 ./source/x/freeglut
-rw-r--r-- 1 root root 444 2012-02-13 00:02 ./source/x/freeglut/RATIONALE
-rw-r--r-- 1 root root 313505 2019-09-29 19:13 ./source/x/freeglut/freeglut-3.2.1.tar.lz
@ -12364,35 +12380,35 @@ drwxr-xr-x 2 root root 12288 2020-05-18 17:50 ./source/x/x11/slack-desc
-rw-r--r-- 1 root root 874 2012-04-08 03:18 ./source/x/x11/slack-desc/libXfontcache
-rw-r--r-- 1 root root 748 2012-04-08 03:18 ./source/x/x11/slack-desc/libXft
-rw-r--r-- 1 root root 749 2012-04-08 03:18 ./source/x/x11/slack-desc/libXi
-rw-r--r-- 1 root root 846 2012-04-08 03:19 ./source/x/x11/slack-desc/libXinerama
-rw-r--r-- 1 root root 806 2018-02-26 22:56 ./source/x/x11/slack-desc/libXmu
-rw-r--r-- 1 root root 738 2012-04-08 03:23 ./source/x/x11/slack-desc/libXp
-rw-r--r-- 1 root root 770 2012-04-08 03:24 ./source/x/x11/slack-desc/libXpm
-rw-r--r-- 1 root root 853 2015-04-21 01:58 ./source/x/x11/slack-desc/libXpresent
-rw-r--r-- 1 root root 821 2012-04-08 03:24 ./source/x/x11/slack-desc/libXrandr
-rw-r--r-- 1 root root 838 2012-04-08 03:24 ./source/x/x11/slack-desc/libXrender
-rw-r--r-- 1 root root 779 2012-04-08 03:25 ./source/x/x11/slack-desc/libXres
-rw-r--r-- 1 root root 744 2012-04-08 03:26 ./source/x/x11/slack-desc/libXt
-rw-r--r-- 1 root root 792 2012-04-08 03:26 ./source/x/x11/slack-desc/libXtst
-rw-r--r-- 1 root root 777 2012-04-08 03:26 ./source/x/x11/slack-desc/libXv
-rw-r--r-- 1 root root 777 2012-04-08 02:52 ./source/x/x11/slack-desc/libXvMC
-rw-r--r-- 1 root root 844 2012-04-08 03:27 ./source/x/x11/slack-desc/libXxf86dga
-rw-r--r-- 1 root root 864 2012-04-08 03:27 ./source/x/x11/slack-desc/libXxf86misc
-rw-r--r-- 1 root root 829 2012-04-08 03:27 ./source/x/x11/slack-desc/libXxf86vm
-rw-r--r-- 1 root root 777 2012-04-08 03:28 ./source/x/x11/slack-desc/libdmx
-rw-r--r-- 1 root root 807 2012-04-08 03:28 ./source/x/x11/slack-desc/libfontenc
-rw-r--r-- 1 root root 840 2012-04-08 03:29 ./source/x/x11/slack-desc/libpciaccess
-rw-r--r-- 1 root root 1003 2012-04-08 03:30 ./source/x/x11/slack-desc/libpthread-stubs
-rw-r--r-- 1 root root 900 2018-02-26 22:57 ./source/x/x11/slack-desc/libxcb
-rw-r--r-- 1 root root 824 2012-04-08 02:45 ./source/x/x11/slack-desc/libxkbfile
-rw-r--r-- 1 root root 847 2014-05-13 05:34 ./source/x/x11/slack-desc/libxshmfence
-rw-r--r-- 1 root root 707 2012-04-08 03:30 ./source/x/x11/slack-desc/listres
-rw-r--r-- 1 root root 778 2012-04-08 03:31 ./source/x/x11/slack-desc/lndir
-rw-r--r-- 1 root root 826 2018-02-26 22:57 ./source/x/x11/slack-desc/luit
-rw-r--r-- 1 root root 818 2012-04-08 03:31 ./source/x/x11/slack-desc/makedepend
-rw-r--r-- 1 root root 890 2012-04-08 03:31 ./source/x/x11/slack-desc/mkcomposecache
-rw-r--r-- 1 root root 837 2019-10-28 19:03 ./source/x/x11/slack-desc/mkfontscale
-rw-r--r-- 1 root root 679 2012-04-08 03:32 ./source/x/x11/slack-desc/oclock
-rw-r--r-- 1 root root 846 2012-04-08 03:19 ./source/x/x11/slack-desc/libXinerama
-rw-r--r-- 1 root root 806 2018-02-26 22:56 ./source/x/x11/slack-desc/libXmu
-rw-r--r-- 1 root root 738 2012-04-08 03:23 ./source/x/x11/slack-desc/libXp
-rw-r--r-- 1 root root 770 2012-04-08 03:24 ./source/x/x11/slack-desc/libXpm
-rw-r--r-- 1 root root 853 2015-04-21 01:58 ./source/x/x11/slack-desc/libXpresent
-rw-r--r-- 1 root root 821 2012-04-08 03:24 ./source/x/x11/slack-desc/libXrandr
-rw-r--r-- 1 root root 838 2012-04-08 03:24 ./source/x/x11/slack-desc/libXrender
-rw-r--r-- 1 root root 779 2012-04-08 03:25 ./source/x/x11/slack-desc/libXres
-rw-r--r-- 1 root root 744 2012-04-08 03:26 ./source/x/x11/slack-desc/libXt
-rw-r--r-- 1 root root 792 2012-04-08 03:26 ./source/x/x11/slack-desc/libXtst
-rw-r--r-- 1 root root 777 2012-04-08 03:26 ./source/x/x11/slack-desc/libXv
-rw-r--r-- 1 root root 777 2012-04-08 02:52 ./source/x/x11/slack-desc/libXvMC
-rw-r--r-- 1 root root 844 2012-04-08 03:27 ./source/x/x11/slack-desc/libXxf86dga
-rw-r--r-- 1 root root 864 2012-04-08 03:27 ./source/x/x11/slack-desc/libXxf86misc
-rw-r--r-- 1 root root 829 2012-04-08 03:27 ./source/x/x11/slack-desc/libXxf86vm
-rw-r--r-- 1 root root 777 2012-04-08 03:28 ./source/x/x11/slack-desc/libdmx
-rw-r--r-- 1 root root 807 2012-04-08 03:28 ./source/x/x11/slack-desc/libfontenc
-rw-r--r-- 1 root root 840 2012-04-08 03:29 ./source/x/x11/slack-desc/libpciaccess
-rw-r--r-- 1 root root 1003 2012-04-08 03:30 ./source/x/x11/slack-desc/libpthread-stubs
-rw-r--r-- 1 root root 900 2018-02-26 22:57 ./source/x/x11/slack-desc/libxcb
-rw-r--r-- 1 root root 824 2012-04-08 02:45 ./source/x/x11/slack-desc/libxkbfile
-rw-r--r-- 1 root root 847 2014-05-13 05:34 ./source/x/x11/slack-desc/libxshmfence
-rw-r--r-- 1 root root 707 2012-04-08 03:30 ./source/x/x11/slack-desc/listres
-rw-r--r-- 1 root root 778 2012-04-08 03:31 ./source/x/x11/slack-desc/lndir
-rw-r--r-- 1 root root 826 2018-02-26 22:57 ./source/x/x11/slack-desc/luit
-rw-r--r-- 1 root root 818 2012-04-08 03:31 ./source/x/x11/slack-desc/makedepend
-rw-r--r-- 1 root root 890 2012-04-08 03:31 ./source/x/x11/slack-desc/mkcomposecache
-rw-r--r-- 1 root root 837 2019-10-28 19:03 ./source/x/x11/slack-desc/mkfontscale
-rw-r--r-- 1 root root 679 2012-04-08 03:32 ./source/x/x11/slack-desc/oclock
-rw-r--r-- 1 root root 823 2012-04-08 02:44 ./source/x/x11/slack-desc/pixman
-rw-r--r-- 1 root root 732 2018-02-26 22:57 ./source/x/x11/slack-desc/presentproto
-rw-r--r-- 1 root root 731 2012-04-08 03:32 ./source/x/x11/slack-desc/printproto
@ -12653,12 +12669,12 @@ drwxr-xr-x 2 root root 4096 2020-02-01 19:14 ./source/x/x11/src/data
drwxr-xr-x 2 root root 4096 2015-05-04 05:55 ./source/x/x11/src/doc
-rw-r--r-- 1 root root 333452 2015-05-01 06:18 ./source/x/x11/src/doc/xorg-docs-1.7.1.tar.xz
-rw-r--r-- 1 root root 110976 2012-06-06 02:42 ./source/x/x11/src/doc/xorg-sgml-doctools-1.11.tar.xz
drwxr-xr-x 2 root root 4096 2020-01-19 19:11 ./source/x/x11/src/driver
drwxr-xr-x 2 root root 4096 2020-05-19 19:20 ./source/x/x11/src/driver
-rw-r--r-- 1 root root 236544 2011-05-04 23:02 ./source/x/x11/src/driver/xf86-input-acecad-1.5.0.tar.xz
-rw-r--r-- 1 root root 345048 2018-05-29 02:33 ./source/x/x11/src/driver/xf86-input-evdev-2.10.6.tar.xz
-rw-r--r-- 1 root root 291860 2016-11-17 23:02 ./source/x/x11/src/driver/xf86-input-joystick-1.6.3.tar.xz
-rw-r--r-- 1 root root 290104 2016-11-17 04:29 ./source/x/x11/src/driver/xf86-input-keyboard-1.9.0.tar.xz
-rw-r--r-- 1 root root 308644 2019-08-12 02:38 ./source/x/x11/src/driver/xf86-input-libinput-0.29.0.tar.xz
-rw-r--r-- 1 root root 309420 2020-05-19 06:23 ./source/x/x11/src/driver/xf86-input-libinput-0.30.0.tar.xz
-rw-r--r-- 1 root root 318204 2018-06-19 04:36 ./source/x/x11/src/driver/xf86-input-mouse-1.9.3.tar.xz
-rw-r--r-- 1 root root 229120 2011-06-28 00:52 ./source/x/x11/src/driver/xf86-input-penmount-1.5.0.tar.xz
-rw-r--r-- 1 root root 427964 2018-05-29 03:19 ./source/x/x11/src/driver/xf86-input-synaptics-1.9.1.tar.xz

View file

@ -1271,6 +1271,19 @@ gzip ./source/x/libvdpau/doinst.sh
gzip ./source/x/ttf-tlwg/doinst.sh
gzip ./source/x/xterm/doinst.sh
gzip ./source/x/fontconfig/fontconfig.font.dir.list.diff
gzip ./source/x/fontconfig/fedora-patches/fontconfig-drop-lang-from-pkgkit-format.patch
gzip ./source/x/fontconfig/fedora-patches/fontconfig-sleep-less.patch
gzip ./source/x/fontconfig/fedora-patches/fontconfig-fix-assertion.patch
gzip ./source/x/fontconfig/fedora-patches/fontconfig-score-hint-on-match.patch
gzip ./source/x/fontconfig/fedora-patches/fontconfig-0-timestamp-dir-on-sb.patch
gzip ./source/x/fontconfig/fedora-patches/fontconfig-fix-dtd-id.patch
gzip ./source/x/fontconfig/fedora-patches/fontconfig-required-freetype-version.patch
gzip ./source/x/fontconfig/fedora-patches/fontconfig-read-latest-cache.patch
gzip ./source/x/fontconfig/fedora-patches/fontconfig-sysroot.patch
gzip ./source/x/fontconfig/fedora-patches/fontconfig-fix-1744377.patch
gzip ./source/x/fontconfig/fedora-patches/fontconfig-fix-dtd.patch
gzip ./source/x/fontconfig/fedora-patches/fontconfig-fix-test.patch
gzip ./source/x/fontconfig/fedora-patches/fontconfig-mt.patch
gzip ./source/x/fontconfig/doinst.sh
gzip ./source/x/fontconfig/fontconfig.liberation.diff
gzip ./source/x/fontconfig/fontconfig.dejavu.diff

View file

@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=shadow
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-7}
BUILD=${BUILD:-8}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@ -192,6 +192,12 @@ if [ "$SHIP_SU" = "NO" ]; then
find $PKG/usr/man -name suauth.5 | xargs rm
fi
# /etc/suauth doesn't work with PAM, even if configure.ac is hacked to try
# to turn the feature on, so remove the man pages if we're using PAM:
if [ -L /lib${LIBDIRSUFFIX}/libpam.so.? ]; then
find $PKG/usr/man -name suauth.5 | xargs rm
fi
# /bin/groups is provided by coreutils.
rm -f $PKG/bin/groups
find $PKG -name groups.1 -exec rm {} \+

View file

@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libexif
VERSION=${VERSION:-$(echo libexif-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-2}
BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then

View file

@ -0,0 +1 @@
https://github.com/libexif/libexif/

View file

@ -13,7 +13,7 @@ libexif: to store extra information in images such as the JPEG files produced
libexif: by digital cameras. The libexif library allows programs such as
libexif: gthumb to parse, edit, and save EXIF data.
libexif:
libexif:
libexif: Homepage: https://libexif.github.io
libexif:
libexif:
libexif:

View file

@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=oniguruma
SRCNAM=oniguruma
VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@ -100,6 +100,7 @@ CXXFLAGS="$SLKCFLAGS" \
--localstatedir=/var \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--mandir=/usr/man \
--enable-posix-api \
--disable-static \
--build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1

View file

@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=python-packaging
VERSION=${VERSION:-$(echo packaging-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-2}
BUILD=${BUILD:-1}
SRCNAM=packaging

View file

@ -0,0 +1,55 @@
diff --git a/src/fccache.c b/src/fccache.c
index 2d398c73..7139b082 100644
--- a/src/fccache.c
+++ b/src/fccache.c
@@ -845,7 +845,7 @@ FcCacheTimeValid (FcConfig *config, FcCache *cache, struct stat *dir_stat)
FcCacheDir (cache), cache->checksum, (int) dir_stat->st_mtime);
#endif
- return cache->checksum == (int) dir_stat->st_mtime && fnano;
+ return dir_stat->st_mtime == 0 || (cache->checksum == (int) dir_stat->st_mtime && fnano);
}
static FcBool
@@ -1041,17 +1041,39 @@ static FcBool
FcDirCacheMapHelper (FcConfig *config, int fd, struct stat *fd_stat, struct stat *dir_stat, struct timeval *latest_cache_mtime, void *closure)
{
FcCache *cache = FcDirCacheMapFd (config, fd, fd_stat, dir_stat);
- struct timeval cache_mtime;
+ struct timeval cache_mtime, zero_mtime = { 0, 0}, dir_mtime;
if (!cache)
return FcFalse;
cache_mtime.tv_sec = fd_stat->st_mtime;
+ dir_mtime.tv_sec = dir_stat->st_mtime;
#ifdef HAVE_STRUCT_STAT_ST_MTIM
cache_mtime.tv_usec = fd_stat->st_mtim.tv_nsec / 1000;
+ dir_mtime.tv_usec = dir_stat->st_mtim.tv_nsec / 1000;
#else
cache_mtime.tv_usec = 0;
+ dir_mtime.tv_usec = 0;
#endif
- if (timercmp (latest_cache_mtime, &cache_mtime, <))
+ /* special take care of OSTree */
+ if (!timercmp (&zero_mtime, &dir_mtime, !=))
+ {
+ if (!timercmp (&zero_mtime, &cache_mtime, !=))
+ {
+ if (*((FcCache **) closure))
+ FcDirCacheUnload (*((FcCache **) closure));
+ }
+ else if (*((FcCache **) closure) && !timercmp (&zero_mtime, latest_cache_mtime, !=))
+ {
+ FcDirCacheUnload (cache);
+ return FcFalse;
+ }
+ else if (timercmp (latest_cache_mtime, &cache_mtime, <))
+ {
+ if (*((FcCache **) closure))
+ FcDirCacheUnload (*((FcCache **) closure));
+ }
+ }
+ else if (timercmp (latest_cache_mtime, &cache_mtime, <))
{
if (*((FcCache **) closure))
FcDirCacheUnload (*((FcCache **) closure));

View file

@ -0,0 +1,12 @@
diff -pruN fontconfig-2.13.92.orig/src/fcformat.c fontconfig-2.13.92/src/fcformat.c
--- fontconfig-2.13.92.orig/src/fcformat.c 2018-07-19 12:14:39.000000000 +0900
+++ fontconfig-2.13.92/src/fcformat.c 2020-01-20 13:05:33.626227767 +0900
@@ -78,7 +78,7 @@
#define FCCAT_FORMAT "\"%{file|basename|cescape}\" %{index} \"%{-file{%{=unparse|cescape}}}\""
#define FCMATCH_FORMAT "%{file:-<unknown filename>|basename}: \"%{family[0]:-<unknown family>}\" \"%{style[0]:-<unknown style>}\""
#define FCLIST_FORMAT "%{?file{%{file}: }}%{-file{%{=unparse}}}"
-#define PKGKIT_FORMAT "%{[]family{font(%{family|downcase|delete( )})\n}}%{[]lang{font(:lang=%{lang|downcase|translate(_,-)})\n}}"
+#define PKGKIT_FORMAT "%{[]family{font(%{family|downcase|delete( )})\n}}"
static void

View file

@ -0,0 +1,122 @@
From fcada522913e5e07efa6367eff87ace9f06d24c8 Mon Sep 17 00:00:00 2001
From: Akira TAGOH <akira@tagoh.org>
Date: Wed, 28 Aug 2019 17:46:03 +0900
Subject: [PATCH] Do not return FcFalse from FcConfigParseAndLoad*() if
complain is set to false
https://bugzilla.redhat.com/show_bug.cgi?id=1744377
---
src/fcxml.c | 8 ++++---
test/Makefile.am | 4 ++++
test/test-bz1744377.c | 51 +++++++++++++++++++++++++++++++++++++++++++
3 files changed, 60 insertions(+), 3 deletions(-)
create mode 100644 test/test-bz1744377.c
diff --git a/src/fcxml.c b/src/fcxml.c
index 2e26e77a..076fa301 100644
--- a/src/fcxml.c
+++ b/src/fcxml.c
@@ -3526,7 +3526,7 @@ _FcConfigParse (FcConfig *config,
int len;
FcStrBuf sbuf;
char buf[BUFSIZ];
- FcBool ret = FcFalse;
+ FcBool ret = FcFalse, complain_again = complain;
#ifdef _WIN32
if (!pGetSystemWindowsDirectory)
@@ -3605,7 +3605,7 @@ _FcConfigParse (FcConfig *config,
close (fd);
ret = FcConfigParseAndLoadFromMemoryInternal (config, filename, FcStrBufDoneStatic (&sbuf), complain, load);
- complain = FcFalse; /* no need to reclaim here */
+ complain_again = FcFalse; /* no need to reclaim here */
bail1:
FcStrBufDestroy (&sbuf);
bail0:
@@ -3613,7 +3613,9 @@ bail0:
FcStrFree (filename);
if (realfilename)
FcStrFree (realfilename);
- if (!ret && complain)
+ if (!complain)
+ return FcTrue;
+ if (!ret && complain_again)
{
if (name)
FcConfigMessage (0, FcSevereError, "Cannot %s config file \"%s\"", load ? "load" : "scan", name);
diff --git a/test/Makefile.am b/test/Makefile.am
index f9c21581..a9fa089a 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -131,6 +131,10 @@ TESTS += test-d1f48f11
endif
endif
+check_PROGRAMS += test-bz1744377
+test_bz1744377_LDADD = $(top_builddir)/src/libfontconfig.la
+TESTS += test-bz1744377
+
EXTRA_DIST=run-test.sh run-test-conf.sh $(LOG_COMPILER) $(TESTDATA) out.expected-long-family-names out.expected-no-long-family-names
CLEANFILES=out out1 out2 fonts.conf out.expected
diff --git a/test/test-bz1744377.c b/test/test-bz1744377.c
new file mode 100644
index 00000000..d7f10535
--- /dev/null
+++ b/test/test-bz1744377.c
@@ -0,0 +1,51 @@
+/*
+ * fontconfig/test/test-bz1744377.c
+ *
+ * Copyright © 2000 Keith Packard
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission. The authors make no
+ * representations about the suitability of this software for any purpose. It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+#include <fontconfig/fontconfig.h>
+
+int
+main (void)
+{
+ const FcChar8 *doc = ""
+ "<fontconfig>\n"
+ " <include ignore_missing=\"yes\">blahblahblah</include>\n"
+ "</fontconfig>\n"
+ "";
+ const FcChar8 *doc2 = ""
+ "<fontconfig>\n"
+ " <include ignore_missing=\"no\">blahblahblah</include>\n"
+ "</fontconfig>\n"
+ "";
+ FcConfig *cfg = FcConfigCreate ();
+
+ if (!FcConfigParseAndLoadFromMemory (cfg, doc, FcTrue))
+ return 1;
+ if (FcConfigParseAndLoadFromMemory (cfg, doc2, FcTrue))
+ return 1;
+ if (!FcConfigParseAndLoadFromMemory (cfg, doc2, FcFalse))
+ return 1;
+
+ FcConfigDestroy (cfg);
+
+ return 0;
+}
--
2.23.0

View file

@ -0,0 +1,144 @@
From fbc05949ef52c8a8d69233eed77f6636dffec280 Mon Sep 17 00:00:00 2001
From: Akira TAGOH <akira@tagoh.org>
Date: Wed, 26 Feb 2020 15:42:21 +0900
Subject: [PATCH] Fix assertion in FcFini()
Due to the unproper initialization of `latest_mtime', the duplicate caches
was still in fcCacheChains with no references. which means no one frees
them. thus, the memory leak was happened.
Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/227
---
src/fccache.c | 9 +++++----
src/fcinit.c | 4 ++--
2 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/src/fccache.c b/src/fccache.c
index 4744a84..035458e 100644
--- a/src/fccache.c
+++ b/src/fccache.c
@@ -365,7 +365,6 @@ FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
struct stat file_stat, dir_stat;
FcBool ret = FcFalse;
const FcChar8 *sysroot = FcConfigGetSysRoot (config);
- struct timeval latest_mtime = (struct timeval){ 0 };
if (sysroot)
d = FcStrBuildFilename (sysroot, dir, NULL);
@@ -390,6 +389,8 @@ FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
#ifndef _WIN32
FcBool retried = FcFalse;
#endif
+ struct timeval latest_mtime = (struct timeval){ 0 };
+
if (sysroot)
cache_hashed = FcStrBuildFilename (sysroot, cache_dir, cache_base, NULL);
else
@@ -1081,12 +1082,12 @@ FcDirCacheLoadFile (const FcChar8 *cache_file, struct stat *file_stat)
if (!file_stat)
file_stat = &my_file_stat;
- fd = FcDirCacheOpenFile (cache_file, file_stat);
- if (fd < 0)
- return NULL;
config = FcConfigReference (NULL);
if (!config)
return NULL;
+ fd = FcDirCacheOpenFile (cache_file, file_stat);
+ if (fd < 0)
+ return NULL;
cache = FcDirCacheMapFd (config, fd, file_stat, NULL);
FcConfigDestroy (config);
close (fd);
diff --git a/src/fcinit.c b/src/fcinit.c
index 6f82ebd..0e1421e 100644
--- a/src/fcinit.c
+++ b/src/fcinit.c
@@ -199,10 +199,10 @@ void
FcFini (void)
{
FcConfigFini ();
- FcCacheFini ();
+ FcConfigPathFini ();
FcDefaultFini ();
FcObjectFini ();
- FcConfigPathFini ();
+ FcCacheFini ();
}
/*
--
2.24.1
From 6f6b39780215714386606ca1c5457a7106639ff4 Mon Sep 17 00:00:00 2001
From: Akira TAGOH <akira@tagoh.org>
Date: Mon, 23 Mar 2020 14:03:47 +0900
Subject: [PATCH] Fix assertion in FcCacheFini() again
The previous fix in fbc05949ef52c8a8d69233eed77f6636dffec280 was wrong. reverting.
When reading older caches, FcDirCacheMapHelper() returns FcFalse and
it became the return value from FcDirCacheProcess() too, which is wrong.
Actually one of calls for FcDirCacheMapHelper() should be successfully
finished and closure should have a valid pointer for cache.
Due to this, the proper finalization process wasn't running against
cache in closure.
Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/227
---
src/fccache.c | 17 +++++++++++++++--
1 file changed, 15 insertions(+), 2 deletions(-)
diff --git a/src/fccache.c b/src/fccache.c
index 035458e..2d398c7 100644
--- a/src/fccache.c
+++ b/src/fccache.c
@@ -365,6 +365,7 @@ FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
struct stat file_stat, dir_stat;
FcBool ret = FcFalse;
const FcChar8 *sysroot = FcConfigGetSysRoot (config);
+ struct timeval latest_mtime = (struct timeval){ 0 };
if (sysroot)
d = FcStrBuildFilename (sysroot, dir, NULL);
@@ -389,7 +390,6 @@ FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
#ifndef _WIN32
FcBool retried = FcFalse;
#endif
- struct timeval latest_mtime = (struct timeval){ 0 };
if (sysroot)
cache_hashed = FcStrBuildFilename (sysroot, cache_dir, cache_base, NULL);
@@ -445,6 +445,8 @@ FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
}
FcStrListDone (list);
+ if (closure)
+ return !!(*((FcCache **)closure) != NULL);
return ret;
}
@@ -792,7 +794,18 @@ FcCacheFini (void)
int i;
for (i = 0; i < FC_CACHE_MAX_LEVEL; i++)
- assert (fcCacheChains[i] == NULL);
+ {
+ if (FcDebug() & FC_DBG_CACHE)
+ {
+ if (fcCacheChains[i] != NULL)
+ {
+ FcCacheSkip *s = fcCacheChains[i];
+ printf("Fontconfig error: not freed %p (dir: %s, refcount %d)\n", s->cache, FcCacheDir(s->cache), s->ref.count);
+ }
+ }
+ else
+ assert (fcCacheChains[i] == NULL);
+ }
assert (fcCacheMaxLevel == 0);
free_lock ();
--
2.24.1

View file

@ -0,0 +1,490 @@
diff -uNr fontconfig-2.13.92.orig/conf.d/05-reset-dirs-sample.conf fontconfig-2.13.92/conf.d/05-reset-dirs-sample.conf
--- fontconfig-2.13.92.orig/conf.d/05-reset-dirs-sample.conf 2019-05-08 10:22:25.000000000 +0200
+++ fontconfig-2.13.92/conf.d/05-reset-dirs-sample.conf 2020-03-28 15:53:41.792757065 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<description>Re-define fonts dirs sample</description>
diff -uNr fontconfig-2.13.92.orig/conf.d/09-autohint-if-no-hinting.conf fontconfig-2.13.92/conf.d/09-autohint-if-no-hinting.conf
--- fontconfig-2.13.92.orig/conf.d/09-autohint-if-no-hinting.conf 2019-07-30 13:03:27.000000000 +0200
+++ fontconfig-2.13.92/conf.d/09-autohint-if-no-hinting.conf 2020-03-28 15:53:41.764757635 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/10-autohint.conf fontconfig-2.13.92/conf.d/10-autohint.conf
--- fontconfig-2.13.92.orig/conf.d/10-autohint.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/10-autohint.conf 2020-03-28 15:53:41.829756312 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/10-hinting-full.conf fontconfig-2.13.92/conf.d/10-hinting-full.conf
--- fontconfig-2.13.92.orig/conf.d/10-hinting-full.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/10-hinting-full.conf 2020-03-28 15:53:41.714758653 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/10-hinting-medium.conf fontconfig-2.13.92/conf.d/10-hinting-medium.conf
--- fontconfig-2.13.92.orig/conf.d/10-hinting-medium.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/10-hinting-medium.conf 2020-03-28 15:53:41.809756719 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/10-hinting-none.conf fontconfig-2.13.92/conf.d/10-hinting-none.conf
--- fontconfig-2.13.92.orig/conf.d/10-hinting-none.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/10-hinting-none.conf 2020-03-28 15:53:41.796756984 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/10-hinting-slight.conf fontconfig-2.13.92/conf.d/10-hinting-slight.conf
--- fontconfig-2.13.92.orig/conf.d/10-hinting-slight.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/10-hinting-slight.conf 2020-03-28 15:53:41.760757717 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/10-no-sub-pixel.conf fontconfig-2.13.92/conf.d/10-no-sub-pixel.conf
--- fontconfig-2.13.92.orig/conf.d/10-no-sub-pixel.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/10-no-sub-pixel.conf 2020-03-28 15:53:41.743758063 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/10-scale-bitmap-fonts.conf fontconfig-2.13.92/conf.d/10-scale-bitmap-fonts.conf
--- fontconfig-2.13.92.orig/conf.d/10-scale-bitmap-fonts.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/10-scale-bitmap-fonts.conf 2020-03-28 15:53:41.727758389 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/10-sub-pixel-bgr.conf fontconfig-2.13.92/conf.d/10-sub-pixel-bgr.conf
--- fontconfig-2.13.92.orig/conf.d/10-sub-pixel-bgr.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/10-sub-pixel-bgr.conf 2020-03-28 15:53:41.841756068 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/10-sub-pixel-rgb.conf fontconfig-2.13.92/conf.d/10-sub-pixel-rgb.conf
--- fontconfig-2.13.92.orig/conf.d/10-sub-pixel-rgb.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/10-sub-pixel-rgb.conf 2020-03-28 15:53:41.723758470 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/10-sub-pixel-vbgr.conf fontconfig-2.13.92/conf.d/10-sub-pixel-vbgr.conf
--- fontconfig-2.13.92.orig/conf.d/10-sub-pixel-vbgr.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/10-sub-pixel-vbgr.conf 2020-03-28 15:53:41.772757472 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/10-sub-pixel-vrgb.conf fontconfig-2.13.92/conf.d/10-sub-pixel-vrgb.conf
--- fontconfig-2.13.92.orig/conf.d/10-sub-pixel-vrgb.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/10-sub-pixel-vrgb.conf 2020-03-28 15:53:41.706758816 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/10-unhinted.conf fontconfig-2.13.92/conf.d/10-unhinted.conf
--- fontconfig-2.13.92.orig/conf.d/10-unhinted.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/10-unhinted.conf 2020-03-28 15:53:41.739758145 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/11-lcdfilter-default.conf fontconfig-2.13.92/conf.d/11-lcdfilter-default.conf
--- fontconfig-2.13.92.orig/conf.d/11-lcdfilter-default.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/11-lcdfilter-default.conf 2020-03-28 15:53:41.731758307 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/11-lcdfilter-legacy.conf fontconfig-2.13.92/conf.d/11-lcdfilter-legacy.conf
--- fontconfig-2.13.92.orig/conf.d/11-lcdfilter-legacy.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/11-lcdfilter-legacy.conf 2020-03-28 15:53:41.837756149 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/11-lcdfilter-light.conf fontconfig-2.13.92/conf.d/11-lcdfilter-light.conf
--- fontconfig-2.13.92.orig/conf.d/11-lcdfilter-light.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/11-lcdfilter-light.conf 2020-03-28 15:53:41.768757554 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/20-unhint-small-vera.conf fontconfig-2.13.92/conf.d/20-unhint-small-vera.conf
--- fontconfig-2.13.92.orig/conf.d/20-unhint-small-vera.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/20-unhint-small-vera.conf 2020-03-28 15:53:41.784757228 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/25-unhint-nonlatin.conf fontconfig-2.13.92/conf.d/25-unhint-nonlatin.conf
--- fontconfig-2.13.92.orig/conf.d/25-unhint-nonlatin.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/25-unhint-nonlatin.conf 2020-03-28 15:53:41.817756556 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/30-metric-aliases.conf fontconfig-2.13.92/conf.d/30-metric-aliases.conf
--- fontconfig-2.13.92.orig/conf.d/30-metric-aliases.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/30-metric-aliases.conf 2020-03-28 15:53:41.718758572 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/40-nonlatin.conf fontconfig-2.13.92/conf.d/40-nonlatin.conf
--- fontconfig-2.13.92.orig/conf.d/40-nonlatin.conf 2019-05-08 10:22:25.000000000 +0200
+++ fontconfig-2.13.92/conf.d/40-nonlatin.conf 2020-03-28 15:53:41.735758226 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/45-generic.conf fontconfig-2.13.92/conf.d/45-generic.conf
--- fontconfig-2.13.92.orig/conf.d/45-generic.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/45-generic.conf 2020-03-28 15:53:41.833756231 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/45-latin.conf fontconfig-2.13.92/conf.d/45-latin.conf
--- fontconfig-2.13.92.orig/conf.d/45-latin.conf 2019-05-08 10:22:25.000000000 +0200
+++ fontconfig-2.13.92/conf.d/45-latin.conf 2020-03-28 15:53:41.756757798 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/49-sansserif.conf fontconfig-2.13.92/conf.d/49-sansserif.conf
--- fontconfig-2.13.92.orig/conf.d/49-sansserif.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/49-sansserif.conf 2020-03-28 15:53:41.845755987 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/50-user.conf fontconfig-2.13.92/conf.d/50-user.conf
--- fontconfig-2.13.92.orig/conf.d/50-user.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/50-user.conf 2020-03-28 15:53:41.710758735 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/51-local.conf fontconfig-2.13.92/conf.d/51-local.conf
--- fontconfig-2.13.92.orig/conf.d/51-local.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/51-local.conf 2020-03-28 15:53:41.805756801 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/60-generic.conf fontconfig-2.13.92/conf.d/60-generic.conf
--- fontconfig-2.13.92.orig/conf.d/60-generic.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/60-generic.conf 2020-03-28 15:53:41.702758898 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/60-latin.conf fontconfig-2.13.92/conf.d/60-latin.conf
--- fontconfig-2.13.92.orig/conf.d/60-latin.conf 2019-05-08 10:22:25.000000000 +0200
+++ fontconfig-2.13.92/conf.d/60-latin.conf 2020-03-28 15:53:41.752757880 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/65-fonts-persian.conf fontconfig-2.13.92/conf.d/65-fonts-persian.conf
--- fontconfig-2.13.92.orig/conf.d/65-fonts-persian.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/65-fonts-persian.conf 2020-03-28 15:53:41.748757961 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<!--
fonts-persian.conf
To configure Persian fonts from The FarsiWeb Project.
diff -uNr fontconfig-2.13.92.orig/conf.d/65-khmer.conf fontconfig-2.13.92/conf.d/65-khmer.conf
--- fontconfig-2.13.92.orig/conf.d/65-khmer.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/65-khmer.conf 2020-03-28 15:53:41.813756638 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/65-nonlatin.conf fontconfig-2.13.92/conf.d/65-nonlatin.conf
--- fontconfig-2.13.92.orig/conf.d/65-nonlatin.conf 2019-05-08 10:22:25.000000000 +0200
+++ fontconfig-2.13.92/conf.d/65-nonlatin.conf 2020-03-28 15:53:41.825756394 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/69-unifont.conf fontconfig-2.13.92/conf.d/69-unifont.conf
--- fontconfig-2.13.92.orig/conf.d/69-unifont.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/69-unifont.conf 2020-03-28 15:53:41.821756475 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/70-no-bitmaps.conf fontconfig-2.13.92/conf.d/70-no-bitmaps.conf
--- fontconfig-2.13.92.orig/conf.d/70-no-bitmaps.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/70-no-bitmaps.conf 2020-03-28 15:53:41.788757147 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/70-yes-bitmaps.conf fontconfig-2.13.92/conf.d/70-yes-bitmaps.conf
--- fontconfig-2.13.92.orig/conf.d/70-yes-bitmaps.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/70-yes-bitmaps.conf 2020-03-28 15:53:41.780757310 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/80-delicious.conf fontconfig-2.13.92/conf.d/80-delicious.conf
--- fontconfig-2.13.92.orig/conf.d/80-delicious.conf 2018-06-05 12:36:38.000000000 +0200
+++ fontconfig-2.13.92/conf.d/80-delicious.conf 2020-03-28 15:53:41.800756903 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/conf.d/90-synthetic.conf fontconfig-2.13.92/conf.d/90-synthetic.conf
--- fontconfig-2.13.92.orig/conf.d/90-synthetic.conf 2018-07-19 05:14:39.000000000 +0200
+++ fontconfig-2.13.92/conf.d/90-synthetic.conf 2020-03-28 15:53:41.776757391 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
<its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
diff -uNr fontconfig-2.13.92.orig/doc/fontconfig-user.html fontconfig-2.13.92/doc/fontconfig-user.html
--- fontconfig-2.13.92.orig/doc/fontconfig-user.html 2019-08-09 13:12:38.000000000 +0200
+++ fontconfig-2.13.92/doc/fontconfig-user.html 2020-03-28 15:53:41.694759061 +0100
@@ -422,7 +422,7 @@
><PRE
CLASS="PROGRAMLISTING"
> &#60;?xml version="1.0"?&#62;
- &#60;!DOCTYPE fontconfig SYSTEM "fonts.dtd"&#62;
+ &#60;!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd"&#62;
&#60;fontconfig&#62;
...
&#60;/fontconfig&#62;
@@ -1240,7 +1240,7 @@
><PRE
CLASS="PROGRAMLISTING"
>&#60;?xml version="1.0"?&#62;
-&#60;!DOCTYPE fontconfig SYSTEM "fonts.dtd"&#62;
+&#60;!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd"&#62;
&#60;!-- /etc/fonts/fonts.conf file to configure system font access --&#62;
&#60;fontconfig&#62;
&#60;!--
@@ -1367,7 +1367,7 @@
><PRE
CLASS="PROGRAMLISTING"
>&#60;?xml version="1.0"?&#62;
-&#60;!DOCTYPE fontconfig SYSTEM "fonts.dtd"&#62;
+&#60;!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd"&#62;
&#60;!-- $XDG_CONFIG_HOME/fontconfig/fonts.conf for per-user font configuration --&#62;
&#60;fontconfig&#62;
diff -uNr fontconfig-2.13.92.orig/doc/fontconfig-user.sgml fontconfig-2.13.92/doc/fontconfig-user.sgml
--- fontconfig-2.13.92.orig/doc/fontconfig-user.sgml 2018-11-15 13:20:50.000000000 +0100
+++ fontconfig-2.13.92/doc/fontconfig-user.sgml 2020-03-28 15:53:41.680759345 +0100
@@ -300,7 +300,7 @@
following structure:
<programlisting>
&lt;?xml version="1.0"?&gt;
- &lt;!DOCTYPE fontconfig SYSTEM "fonts.dtd"&gt;
+ &lt;!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd"&gt;
&lt;fontconfig&gt;
...
&lt;/fontconfig&gt;
@@ -573,7 +573,7 @@
</para>
<programlisting>
&lt;?xml version="1.0"?&gt;
-&lt;!DOCTYPE fontconfig SYSTEM "fonts.dtd"&gt;
+&lt;!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd"&gt;
&lt;!-- &confdir;/fonts.conf file to configure system font access --&gt;
&lt;fontconfig&gt;
&lt;!--
@@ -684,7 +684,7 @@
</para>
<programlisting>
&lt;?xml version="1.0"?&gt;
-&lt;!DOCTYPE fontconfig SYSTEM "fonts.dtd"&gt;
+&lt;!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd"&gt;
&lt;!-- $XDG_CONFIG_HOME/fontconfig/fonts.conf for per-user font configuration --&gt;
&lt;fontconfig&gt;
diff -uNr fontconfig-2.13.92.orig/doc/fontconfig-user.txt fontconfig-2.13.92/doc/fontconfig-user.txt
--- fontconfig-2.13.92.orig/doc/fontconfig-user.txt 2019-08-09 13:12:20.000000000 +0200
+++ fontconfig-2.13.92/doc/fontconfig-user.txt 2020-03-28 15:53:41.689759162 +0100
@@ -261,7 +261,7 @@
following structure:
<?xml version="1.0"?>
- <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+ <!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
...
</fontconfig>
@@ -573,7 +573,7 @@
This is an example of a system-wide configuration file
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<!-- /etc/fonts/fonts.conf file to configure system font access -->
<fontconfig>
<!--
@@ -683,7 +683,7 @@
$XDG_CONFIG_HOME/fontconfig/fonts.conf
<?xml version="1.0"?>
- <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+ <!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<!-- $XDG_CONFIG_HOME/fontconfig/fonts.conf for per-user font configuration -->
<fontconfig>
diff -uNr fontconfig-2.13.92.orig/doc/fonts-conf.5 fontconfig-2.13.92/doc/fonts-conf.5
--- fontconfig-2.13.92.orig/doc/fonts-conf.5 2019-08-09 13:12:20.000000000 +0200
+++ fontconfig-2.13.92/doc/fonts-conf.5 2020-03-28 15:53:41.685759244 +0100
@@ -264,7 +264,7 @@
.sp
.nf
<?xml version="1.0"?>
- <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+ <!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
\&...
</fontconfig>
@@ -554,7 +554,7 @@
.sp
.nf
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<!-- /etc/fonts/fonts.conf file to configure system font access -->
<fontconfig>
<!--
@@ -666,7 +666,7 @@
.sp
.nf
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<!-- $XDG_CONFIG_HOME/fontconfig/fonts.conf for per-user font configuration -->
<fontconfig>
diff -uNr fontconfig-2.13.92.orig/fonts.conf.in fontconfig-2.13.92/fonts.conf.in
--- fontconfig-2.13.92.orig/fonts.conf.in 2019-05-08 10:22:25.000000000 +0200
+++ fontconfig-2.13.92/fonts.conf.in 2020-03-28 15:53:41.698758979 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<!-- /etc/fonts/fonts.conf file to configure system font access -->
<fontconfig>
<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">

View file

@ -0,0 +1,26 @@
From a4aa66a858f1ecd375c5efe5916398281f73f794 Mon Sep 17 00:00:00 2001
From: Jan Tojnar <jtojnar@gmail.com>
Date: Wed, 20 Nov 2019 02:13:58 +0000
Subject: [PATCH] Correct reset-dirs in DTD
Empty elements need to be declared as such in well-formed DTDs.
---
fonts.dtd | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fonts.dtd b/fonts.dtd
index f8c9f2c..40ecb4e 100644
--- a/fonts.dtd
+++ b/fonts.dtd
@@ -124,7 +124,7 @@
<!--
Reset the list of fonts directories
-->
-<!ELEMENT reset-dirs >
+<!ELEMENT reset-dirs EMPTY>
<!--
Periodically rescan the font configuration and
--
2.24.1

View file

@ -0,0 +1,41 @@
diff -pruN fontconfig-2.13.92.orig/test/run-test.sh fontconfig-2.13.92/test/run-test.sh
--- fontconfig-2.13.92.orig/test/run-test.sh 2020-01-30 20:19:55.148680493 +0900
+++ fontconfig-2.13.92/test/run-test.sh 2020-01-30 20:25:48.604550017 +0900
@@ -409,7 +409,7 @@ rm -rf $MYCACHEBASEDIR $MYCONFIG my-font
fi # if [ "x$EXEEXT" = "x" ]
-if [ -x $BUILDTESTDIR/test-crbug1004254 ]; then
+if [ -x $BUILDTESTDIR/test-crbug1004254 ] && [ 0 -eq 1 ]; then
dotest "MT-safe global config"
prep
curl -s -o $FONTDIR/noto.zip https://noto-website-2.storage.googleapis.com/pkgs/NotoSans-hinted.zip
From 8bddcb113779178e5b5ed711db08d9bfbff924cc Mon Sep 17 00:00:00 2001
From: Akira TAGOH <akira@tagoh.org>
Date: Thu, 5 Dec 2019 19:55:06 +0900
Subject: [PATCH] Fix a test fail when no bwrap was available
Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/201
---
test/run-test.sh | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/test/run-test.sh b/test/run-test.sh
index e1ee6d0..9b2e54b 100644
--- a/test/run-test.sh
+++ b/test/run-test.sh
@@ -40,9 +40,8 @@ ECHO=true
FCLIST="$LOG_COMPILER ../fc-list/fc-list$EXEEXT"
FCCACHE="$LOG_COMPILER ../fc-cache/fc-cache$EXEEXT"
-which bwrap > /dev/null 2>&1
-if [ $? -eq 0 ]; then
- BWRAP=`which bwrap`
+if [ -x "$(command -v bwrap)" ]; then
+ BWRAP="$(command -v bwrap)"
fi
FONT1=$TESTDIR/4x6.pcf
--
2.24.1

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,228 @@
From c9862b6ea7c3234b29f6500c7d07359847e55ed7 Mon Sep 17 00:00:00 2001
From: Akira TAGOH <akira@tagoh.org>
Date: Mon, 28 Oct 2019 17:11:38 +0900
Subject: [PATCH 1/9] Read latest cache in paths
Right now fontconfig uses a cache found first in a path and
cachedirs are the order of the system-wide path and then the user path.
this is due to avoid writing caches into the user path when running as root.
However, changing caches by certain config only, e.g. using <match target="scan">
may not take effect by this behavior, because it may be stored into the user path.
Thus, needing to find the latest cache out from paths.
Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/182
---
src/fccache.c | 36 +++++++++++++++++++++-----
test/run-test.sh | 66 ++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 96 insertions(+), 6 deletions(-)
diff --git a/src/fccache.c b/src/fccache.c
index 0976201..4acde22 100644
--- a/src/fccache.c
+++ b/src/fccache.c
@@ -338,7 +338,7 @@ FcDirCacheOpenFile (const FcChar8 *cache_file, struct stat *file_stat)
static FcBool
FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
FcBool (*callback) (FcConfig *config, int fd, struct stat *fd_stat,
- struct stat *dir_stat, void *closure),
+ struct stat *dir_stat, struct timeval *cache_mtime, void *closure),
void *closure, FcChar8 **cache_file_ret)
{
int fd = -1;
@@ -348,6 +348,7 @@ FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
struct stat file_stat, dir_stat;
FcBool ret = FcFalse;
const FcChar8 *sysroot = FcConfigGetSysRoot (config);
+ struct timeval latest_mtime = (struct timeval){ 0 };
if (sysroot)
d = FcStrBuildFilename (sysroot, dir, NULL);
@@ -383,15 +384,18 @@ FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
#endif
fd = FcDirCacheOpenFile (cache_hashed, &file_stat);
if (fd >= 0) {
- ret = (*callback) (config, fd, &file_stat, &dir_stat, closure);
+ ret = (*callback) (config, fd, &file_stat, &dir_stat, &latest_mtime, closure);
close (fd);
if (ret)
{
if (cache_file_ret)
+ {
+ if (*cache_file_ret)
+ FcStrFree (*cache_file_ret);
*cache_file_ret = cache_hashed;
+ }
else
FcStrFree (cache_hashed);
- break;
}
}
#ifndef _WIN32
@@ -414,7 +418,8 @@ FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
}
}
#endif
- FcStrFree (cache_hashed);
+ else
+ FcStrFree (cache_hashed);
}
FcStrListDone (list);
@@ -998,12 +1003,31 @@ FcDirCacheUnload (FcCache *cache)
}
static FcBool
-FcDirCacheMapHelper (FcConfig *config, int fd, struct stat *fd_stat, struct stat *dir_stat, void *closure)
+FcDirCacheMapHelper (FcConfig *config, int fd, struct stat *fd_stat, struct stat *dir_stat, struct timeval *latest_cache_mtime, void *closure)
{
FcCache *cache = FcDirCacheMapFd (config, fd, fd_stat, dir_stat);
+ struct timeval cache_mtime;
if (!cache)
return FcFalse;
+ cache_mtime.tv_sec = fd_stat->st_mtime;
+#ifdef HAVE_STRUCT_STAT_ST_MTIM
+ cache_mtime.tv_usec = fd_stat->st_mtim.tv_nsec / 1000;
+#else
+ cache_mtime.tv_usec = 0;
+#endif
+ if (timercmp (latest_cache_mtime, &cache_mtime, <))
+ {
+ if (*((FcCache **) closure))
+ FcDirCacheUnload (*((FcCache **) closure));
+ }
+ else
+ {
+ FcDirCacheUnload (cache);
+ return FcFalse;
+ }
+ latest_cache_mtime->tv_sec = cache_mtime.tv_sec;
+ latest_cache_mtime->tv_usec = cache_mtime.tv_usec;
*((FcCache **) closure) = cache;
return FcTrue;
}
@@ -1093,7 +1117,7 @@ FcDirChecksumNano (struct stat *statb)
* the magic number and the size field
*/
static FcBool
-FcDirCacheValidateHelper (FcConfig *config, int fd, struct stat *fd_stat, struct stat *dir_stat, void *closure FC_UNUSED)
+FcDirCacheValidateHelper (FcConfig *config, int fd, struct stat *fd_stat, struct stat *dir_stat, struct timeval *latest_cache_mtime, void *closure FC_UNUSED)
{
FcBool ret = FcTrue;
FcCache c;
diff --git a/test/run-test.sh b/test/run-test.sh
index 4e5968b..8ad09e3 100644
--- a/test/run-test.sh
+++ b/test/run-test.sh
@@ -340,6 +340,72 @@ fi
rm -rf $MyPWD/sysroot
+dotest "read newer caches when multiple places are allowed to store"
+prep
+cp $FONT1 $FONT2 $FONTDIR
+if [ -n ${SOURCE_DATE_EPOCH:-} ] && [ ${#SOURCE_DATE_EPOCH} -gt 0 ]; then
+ touch -m -t "`date -d \"@${SOURCE_DATE_EPOCH}\" +%y%m%d%H%M.%S`" $FONTDIR
+fi
+MYCACHEBASEDIR=`mktemp -d /tmp/fontconfig.XXXXXXXX`
+MYCACHEDIR=$MYCACHEBASEDIR/cache.dir
+MYOWNCACHEDIR=$MYCACHEBASEDIR/owncache.dir
+MYCONFIG=`mktemp /tmp/fontconfig.XXXXXXXX`
+
+mkdir -p $MYCACHEDIR
+mkdir -p $MYOWNCACHEDIR
+
+sed "s!@FONTDIR@!$FONTDIR!
+s!@REMAPDIR@!!
+s!@CACHEDIR@!$MYCACHEDIR!" < $TESTDIR/fonts.conf.in > my-fonts.conf
+
+FONTCONFIG_FILE=$MyPWD/my-fonts.conf $FCCACHE $FONTDIR
+
+sleep 1
+cat<<EOF>$MYCONFIG
+<fontconfig>
+ <match target="scan">
+ <test name="file"><string>$FONTDIR/4x6.pcf</string></test>
+ <edit name="pixelsize"><int>8</int></edit>
+ </match>
+</fontconfig>
+EOF
+sed "s!@FONTDIR@!$FONTDIR!
+s!@REMAPDIR@!<include ignore_missing=\"yes\">$MYCONFIG</include>!
+s!@CACHEDIR@!$MYOWNCACHEDIR!" < $TESTDIR/fonts.conf.in > my-fonts.conf
+
+if [ -n ${SOURCE_DATE_EPOCH:-} ]; then
+ old_epoch=${SOURCE_DATE_EPOCH}
+ SOURCE_DATE_EPOCH=`expr $SOURCE_DATE_EPOCH + 1`
+fi
+FONTCONFIG_FILE=$MyPWD/my-fonts.conf $FCCACHE -f $FONTDIR
+if [ -n ${SOURCE_DATE_EPOCH:-} ]; then
+ SOURCE_DATE_EPOCH=${old_epoch}
+fi
+
+sed "s!@FONTDIR@!$FONTDIR!
+s!@REMAPDIR@!<include ignore_missing=\"yes\">$MYCONFIG</include>!
+s!@CACHEDIR@!$MYCACHEDIR</cachedir><cachedir>$MYOWNCACHEDIR!" < $TESTDIR/fonts.conf.in > my-fonts.conf
+
+FONTCONFIG_FILE=$MyPWD/my-fonts.conf $FCLIST - family pixelsize | sort > my-out
+echo "=" >> my-out
+FONTCONFIG_FILE=$MyPWD/my-fonts.conf $FCLIST - family pixelsize | sort >> my-out
+echo "=" >> my-out
+FONTCONFIG_FILE=$MyPWD/my-fonts.conf $FCLIST - family pixelsize | sort >> my-out
+tr -d '\015' <my-out >my-out.tmp; mv my-out.tmp my-out
+sed -e 's/pixelsize=6/pixelsize=8/g' $BUILDTESTDIR/$EXPECTED > my-out.expected
+
+if cmp my-out my-out.expected > /dev/null ; then : ; else
+ echo "*** Test failed: $TEST"
+ echo "*** output is in 'my-out', expected output in 'my-out.expected'"
+ echo "Actual Result"
+ cat my-out
+ echo "Expected Result"
+ cat my-out.expected
+ exit 1
+fi
+
+rm -rf $MYCACHEBASEDIR $MYCONFIG my-fonts.conf my-out my-out.expected
+
fi # if [ "x$EXEEXT" = "x" ]
rm -rf $FONTDIR $CACHEFILE $CACHEDIR $BASEDIR $FONTCONFIG_FILE out
--
2.24.1
From a45fc8a33256d9d3ea0ea7947f33c8e5e3cc7238 Mon Sep 17 00:00:00 2001
From: Akira TAGOH <akira@tagoh.org>
Date: Thu, 31 Oct 2019 16:15:25 +0900
Subject: [PATCH 2/9] Fix a memory leak caused by the previous commit
---
src/fccache.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/fccache.c b/src/fccache.c
index 4acde22..c565560 100644
--- a/src/fccache.c
+++ b/src/fccache.c
@@ -397,6 +397,8 @@ FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
else
FcStrFree (cache_hashed);
}
+ else
+ FcStrFree (cache_hashed);
}
#ifndef _WIN32
else if (!retried)
@@ -416,6 +418,8 @@ FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
break;
goto retry;
}
+ else
+ FcStrFree (cache_hashed);
}
#endif
else
--
2.24.1

View file

@ -0,0 +1,14 @@
diff -pruN fontconfig-2.12.93.orig/configure.ac fontconfig-2.12.93/configure.ac
--- fontconfig-2.12.93.orig/configure.ac 2018-02-15 22:01:54.000000000 +0900
+++ fontconfig-2.12.93/configure.ac 2018-02-15 22:33:42.353941393 +0900
@@ -308,8 +308,8 @@ AC_DEFINE_UNQUOTED(USE_ICONV,$use_iconv,
# Checks for FreeType
#
dnl See http://git.savannah.gnu.org/cgit/freetype/freetype2.git/tree/docs/VERSIONS.TXT for versioning in freetype
-PKG_CHECK_MODULES(FREETYPE, freetype2 >= 21.0.15)
-PKGCONFIG_REQUIRES="$PKGCONFIG_REQUIRES freetype2 >= 21.0.15"
+PKG_CHECK_MODULES(FREETYPE, freetype2 >= 20.0.14)
+PKGCONFIG_REQUIRES="$PKGCONFIG_REQUIRES freetype2 >= 20.0.14"
AC_SUBST(FREETYPE_LIBS)
AC_SUBST(FREETYPE_CFLAGS)

View file

@ -0,0 +1,36 @@
From cb1036a7c7f1cb79fa799b1db368c86b018ec368 Mon Sep 17 00:00:00 2001
From: Akira TAGOH <akira@tagoh.org>
Date: Fri, 9 Aug 2019 12:22:08 +0000
Subject: [PATCH] Affect FC_FONT_HAS_HINT property to score on matcher
---
src/fcmatch.c | 1 +
src/fcobjs.h | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/fcmatch.c b/src/fcmatch.c
index c3d2b8ad..78bcf7b4 100644
--- a/src/fcmatch.c
+++ b/src/fcmatch.c
@@ -342,6 +342,7 @@ typedef enum _FcMatcherPriority {
PRI1(SLANT),
PRI1(WEIGHT),
PRI1(WIDTH),
+ PRI1(FONT_HAS_HINT),
PRI1(DECORATIVE),
PRI1(ANTIALIAS),
PRI1(RASTERIZER),
diff --git a/src/fcobjs.h b/src/fcobjs.h
index 7bb97d09..dd4a6ec3 100644
--- a/src/fcobjs.h
+++ b/src/fcobjs.h
@@ -72,5 +72,5 @@ FC_OBJECT (COLOR, FcTypeBool, FcCompareBool)
FC_OBJECT (SYMBOL, FcTypeBool, FcCompareBool)
FC_OBJECT (FONT_VARIATIONS, FcTypeString, NULL)
FC_OBJECT (VARIABLE, FcTypeBool, FcCompareBool)
-FC_OBJECT (FONT_HAS_HINT, FcTypeBool, NULL)
+FC_OBJECT (FONT_HAS_HINT, FcTypeBool, FcCompareBool)
/* ^-------------- Add new objects here. */
--
2.22.0

View file

@ -0,0 +1,12 @@
diff -pruN fontconfig-2.12.91.orig/fc-cache/fc-cache.c fontconfig-2.12.91/fc-cache/fc-cache.c
--- fontconfig-2.12.91.orig/fc-cache/fc-cache.c 2017-11-20 21:02:20.000000000 +0900
+++ fontconfig-2.12.91/fc-cache/fc-cache.c 2017-12-14 16:59:19.002003145 +0900
@@ -413,7 +413,7 @@ main (int argc, char **argv)
*/
/* the resolution of mtime on FAT is 2 seconds */
if (changed)
- sleep (2);
+ sleep (1);
if (verbose)
printf ("%s: %s\n", argv[0], ret ? _("failed") : _("succeeded"));
return ret;

View file

@ -0,0 +1,285 @@
From cd51cb241aad7b362b793200ca7d42595c14f52b Mon Sep 17 00:00:00 2001
From: Akira TAGOH <akira@tagoh.org>
Date: Mon, 21 Oct 2019 16:17:42 +0900
Subject: [PATCH] Take effect sysroot functionality to the default config file
When loading the default config file with FONTCONFIG_SYSROOT,
it fails if no /etc/fonts/fonts.conf is available, even if it is
there where is based on sysroot.
To address this, FcConfig is required to determine the sysroot.
therefore, this change makes FcConfigFilename() deprecated,
use FcConfigGetFilename() instead.
Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/181
---
doc/fcconfig.fncs | 11 +++++++
fontconfig/fontconfig.h | 4 +++
src/fccfg.c | 67 ++++++++++++++++++++++++++++-------------
src/fcxml.c | 24 ++++++++++++---
4 files changed, 81 insertions(+), 25 deletions(-)
diff --git a/doc/fcconfig.fncs b/doc/fcconfig.fncs
index 5f1ef43..82769d5 100644
--- a/doc/fcconfig.fncs
+++ b/doc/fcconfig.fncs
@@ -344,6 +344,15 @@ to be up to date, and used.
@TYPE1@ const FcChar8 * @ARG1@ name
@PURPOSE@ Find a config file
@DESC@
+This function is deprecated and is replaced by <function>FcConfigGetFilename</function>.
+@@
+
+@RET@ FcChar8 *
+@FUNC@ FcConfigGetFilename
+@TYPE1@ FcConfig * @ARG1@ config
+@TYPE2@ const FcChar8 * @ARG2@ name
+@PURPOSE@ Find a config file
+@DESC@
Given the specified external entity name, return the associated filename.
This provides applications a way to convert various configuration file
references into filename form.
@@ -355,6 +364,8 @@ refers to a file in the current users home directory. Otherwise if the name
doesn't start with '/', it refers to a file in the default configuration
directory; the built-in default directory can be overridden with the
FONTCONFIG_PATH environment variable.
+ </para><para>
+The result of this function is affected by the FONTCONFIG_SYSROOT environment variable or equivalent functionality.
@@
@RET@ FcBool
diff --git a/fontconfig/fontconfig.h b/fontconfig/fontconfig.h
index 9586616..2f0e8cf 100644
--- a/fontconfig/fontconfig.h
+++ b/fontconfig/fontconfig.h
@@ -393,6 +393,10 @@ FcConfigHome (void);
FcPublic FcBool
FcConfigEnableHome (FcBool enable);
+FcPublic FcChar8 *
+FcConfigGetFilename (FcConfig *config,
+ const FcChar8 *url);
+
FcPublic FcChar8 *
FcConfigFilename (const FcChar8 *url);
diff --git a/src/fccfg.c b/src/fccfg.c
index e81eeba..21ccd25 100644
--- a/src/fccfg.c
+++ b/src/fccfg.c
@@ -686,7 +686,7 @@ FcConfigAddConfigFile (FcConfig *config,
const FcChar8 *f)
{
FcBool ret;
- FcChar8 *file = FcConfigFilename (f);
+ FcChar8 *file = FcConfigGetFilename (config, f);
if (!file)
return FcFalse;
@@ -2284,10 +2284,19 @@ FcConfigEnableHome (FcBool enable)
}
FcChar8 *
-FcConfigFilename (const FcChar8 *url)
+FcConfigGetFilename (FcConfig *config,
+ const FcChar8 *url)
{
FcChar8 *file, *dir, **path, **p;
+ const FcChar8 *sysroot;
+ if (!config)
+ {
+ config = FcConfigGetCurrent ();
+ if (!config)
+ return NULL;
+ }
+ sysroot = FcConfigGetSysRoot (config);
if (!url || !*url)
{
url = (FcChar8 *) getenv ("FONTCONFIG_FILE");
@@ -2297,13 +2306,23 @@ FcConfigFilename (const FcChar8 *url)
file = 0;
if (FcStrIsAbsoluteFilename(url))
- return FcConfigFileExists (0, url);
+ return FcConfigFileExists (sysroot, url);
if (*url == '~')
{
dir = FcConfigHome ();
if (dir)
- file = FcConfigFileExists (dir, url + 1);
+ {
+ FcChar8 *s;
+
+ if (sysroot)
+ s = FcStrBuildFilename (sysroot, dir, NULL);
+ else
+ s = dir;
+ file = FcConfigFileExists (s, url + 1);
+ if (sysroot)
+ FcStrFree (s);
+ }
else
file = 0;
}
@@ -2314,7 +2333,15 @@ FcConfigFilename (const FcChar8 *url)
return NULL;
for (p = path; *p; p++)
{
- file = FcConfigFileExists (*p, url);
+ FcChar8 *s;
+
+ if (sysroot)
+ s = FcStrBuildFilename (sysroot, *p, NULL);
+ else
+ s = *p;
+ file = FcConfigFileExists (s, url);
+ if (sysroot)
+ FcStrFree (s);
if (file)
break;
}
@@ -2323,33 +2350,31 @@ FcConfigFilename (const FcChar8 *url)
return file;
}
+FcChar8 *
+FcConfigFilename (const FcChar8 *url)
+{
+ return FcConfigGetFilename (NULL, url);
+}
+
FcChar8 *
FcConfigRealFilename (FcConfig *config,
const FcChar8 *url)
{
- const FcChar8 *sysroot = FcConfigGetSysRoot (config);
- FcChar8 *n = FcConfigFilename (url);
- FcChar8 *nn = NULL;
+ FcChar8 *n = FcConfigGetFilename (config, url);
if (n)
{
FcChar8 buf[FC_PATH_MAX];
ssize_t len;
- if (sysroot)
- nn = FcStrBuildFilename (sysroot, n, NULL);
- else
- nn = FcStrdup (n);
- FcStrFree (n);
-
- if ((len = FcReadLink (nn, buf, sizeof (buf) - 1)) != -1)
+ if ((len = FcReadLink (n, buf, sizeof (buf) - 1)) != -1)
{
buf[len] = 0;
if (!FcStrIsAbsoluteFilename (buf))
{
- FcChar8 *dirname = FcStrDirname (nn);
- FcStrFree (nn);
+ FcChar8 *dirname = FcStrDirname (n);
+ FcStrFree (n);
if (!dirname)
return NULL;
@@ -2358,18 +2383,18 @@ FcConfigRealFilename (FcConfig *config,
if (!path)
return NULL;
- nn = FcStrCanonFilename (path);
+ n = FcStrCanonFilename (path);
FcStrFree (path);
}
else
{
- FcStrFree (nn);
- nn = FcStrdup (buf);
+ FcStrFree (n);
+ n = FcStrdup (buf);
}
}
}
- return nn;
+ return n;
}
/*
diff --git a/src/fcxml.c b/src/fcxml.c
index d9a67f6..a366644 100644
--- a/src/fcxml.c
+++ b/src/fcxml.c
@@ -2541,7 +2541,7 @@ FcParseInclude (FcConfigParse *parse)
FcChar8 *filename;
static FcBool warn_conf = FcFalse, warn_confd = FcFalse;
- filename = FcConfigFilename(s);
+ filename = FcConfigGetFilename(parse->config, s);
if (deprecated == FcTrue &&
filename != NULL &&
userdir != NULL &&
@@ -3532,7 +3532,9 @@ _FcConfigParse (FcConfig *config,
FcStrBuf sbuf;
char buf[BUFSIZ];
FcBool ret = FcFalse, complain_again = complain;
+ FcStrBuf reason;
+ FcStrBufInit (&reason, NULL, 0);
#ifdef _WIN32
if (!pGetSystemWindowsDirectory)
{
@@ -3549,12 +3551,20 @@ _FcConfigParse (FcConfig *config,
}
#endif
- filename = FcConfigFilename (name);
+ filename = FcConfigGetFilename (config, name);
if (!filename)
+ {
+ FcStrBufString (&reason, (FcChar8 *)"No such file: ");
+ FcStrBufString (&reason, name ? name : (FcChar8 *)"(null)");
goto bail0;
+ }
realfilename = FcConfigRealFilename (config, name);
if (!realfilename)
+ {
+ FcStrBufString (&reason, (FcChar8 *)"No such realfile: ");
+ FcStrBufString (&reason, name ? name : (FcChar8 *)"(null)");
goto bail0;
+ }
if (FcStrSetMember (config->availConfigFiles, realfilename))
{
FcStrFree (filename);
@@ -3582,7 +3592,11 @@ _FcConfigParse (FcConfig *config,
fd = FcOpen ((char *) realfilename, O_RDONLY);
if (fd == -1)
+ {
+ FcStrBufString (&reason, (FcChar8 *)"Unable to open ");
+ FcStrBufString (&reason, realfilename);
goto bail1;
+ }
do {
len = read (fd, buf, BUFSIZ);
@@ -3623,11 +3637,13 @@ bail0:
if (!ret && complain_again)
{
if (name)
- FcConfigMessage (0, FcSevereError, "Cannot %s config file \"%s\"", load ? "load" : "scan", name);
+ FcConfigMessage (0, FcSevereError, "Cannot %s config file \"%s\": %s", load ? "load" : "scan", name, FcStrBufDoneStatic (&reason));
else
- FcConfigMessage (0, FcSevereError, "Cannot %s default config file", load ? "load" : "scan");
+ FcConfigMessage (0, FcSevereError, "Cannot %s default config file: %s", load ? "load" : "scan", FcStrBufDoneStatic (&reason));
+ FcStrBufDestroy (&reason);
return FcFalse;
}
+ FcStrBufDestroy (&reason);
return ret;
}
--
2.24.1

View file

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright 2008, 2009, 2010, 2013, 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# Copyright 2008, 2009, 2010, 2013, 2017, 2018, 2020 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@ -87,6 +87,23 @@ zcat $CWD/fontconfig.liberation.diff.gz | patch -p1 --verbose || exit 1
# it out (and possibly follow symlinks, or index ugly bitmapped fonts):
zcat $CWD/fontconfig.font.dir.list.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1
# Add some patches from the Fedora SRPM:
zcat $CWD/fedora-patches/fontconfig-sleep-less.patch.gz | patch -p1 --verbose || exit 1
#zcat $CWD/fedora-patches/fontconfig-required-freetype-version.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/fedora-patches/fontconfig-score-hint-on-match.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/fedora-patches/fontconfig-fix-1744377.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/fedora-patches/fontconfig-drop-lang-from-pkgkit-format.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/fedora-patches/fontconfig-sysroot.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/fedora-patches/fontconfig-read-latest-cache.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/fedora-patches/fontconfig-mt.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/fedora-patches/fontconfig-fix-test.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/fedora-patches/fontconfig-fix-assertion.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/fedora-patches/fontconfig-fix-dtd.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/fedora-patches/fontconfig-fix-dtd-id.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/fedora-patches/fontconfig-0-timestamp-dir-on-sb.patch.gz | patch -p1 --verbose || exit 1
autoreconf -vif
CFLAGS=$SLKCFLAGS \
./configure \
--prefix=/usr \
@ -99,6 +116,7 @@ CFLAGS=$SLKCFLAGS \
--with-xmldir=/etc/fonts \
--localstatedir=/var \
--enable-static=no \
--enable-libxml2 \
--build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1

View file

@ -0,0 +1 @@
http://fontconfig.org/release

View file

@ -13,7 +13,7 @@ fontconfig: font configuration, customization, and application access.
fontconfig:
fontconfig: Fontconfig is written and maintained by Keith Packard.
fontconfig:
fontconfig:
fontconfig: Homepage: https://www.fontconfig.org
fontconfig:
fontconfig:
fontconfig: