Accepting request 673056 from M17N
OBS-URL: https://build.opensuse.org/request/show/673056 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/fontconfig?expand=0&rev=91
This commit is contained in:
commit
d022db9b92
82
fontconfig-do-not-remove-UUID-file.patch
Normal file
82
fontconfig-do-not-remove-UUID-file.patch
Normal file
@ -0,0 +1,82 @@
|
|||||||
|
https://gitlab.freedesktop.org/fontconfig/fontconfig/merge_requests/8
|
||||||
|
From 5f12f564f8748deaa603adb7a4b8f616b6390ad4 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Keith Packard <keithp@keithp.com>
|
||||||
|
Date: Wed, 17 Oct 2018 21:15:47 -0700
|
||||||
|
Subject: [PATCH] Do not remove UUID file when a scanned directory is empty
|
||||||
|
|
||||||
|
Because FcDirCacheDeleteUUID does not reset the modification time on
|
||||||
|
the directory, and because FcDirCacheRead unconditionally creates the
|
||||||
|
UUID file each time it is run, any empty directory in the cache will
|
||||||
|
get its timestamp changed each time the cache for that directory is
|
||||||
|
read.
|
||||||
|
|
||||||
|
Instead, just leave the UUID file around as it is harmless.
|
||||||
|
|
||||||
|
The alternative would be to only create the UUID file after the cache
|
||||||
|
has been created and the directory has been discovered to be
|
||||||
|
non-empty, but that would delay the creation of the UUID file.
|
||||||
|
|
||||||
|
Signed-off-by: Keith Packard <keithp@keithp.com>
|
||||||
|
---
|
||||||
|
src/fcdir.c | 7 -------
|
||||||
|
1 file changed, 7 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/fcdir.c b/src/fcdir.c
|
||||||
|
index 93f220c..bfcdf95 100644
|
||||||
|
--- a/src/fcdir.c
|
||||||
|
+++ b/src/fcdir.c
|
||||||
|
@@ -421,13 +421,6 @@ FcDirCacheRead (const FcChar8 *dir, FcBool force, FcConfig *config)
|
||||||
|
/* Not using existing cache file, construct new cache */
|
||||||
|
if (!cache)
|
||||||
|
cache = FcDirCacheScan (dir, config);
|
||||||
|
- if (cache)
|
||||||
|
- {
|
||||||
|
- FcFontSet *fs = FcCacheSet (cache);
|
||||||
|
-
|
||||||
|
- if (cache->dirs_count == 0 && (!fs || fs->nfont == 0))
|
||||||
|
- FcDirCacheDeleteUUID (dir, config);
|
||||||
|
- }
|
||||||
|
|
||||||
|
return cache;
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.18.1
|
||||||
|
|
||||||
|
diff --git a/test/run-test.sh b/test/run-test.sh
|
||||||
|
index e76e39bd8c384f8354600d8c7b073a57f3012482..ed41456998ba599568e2ab0bf3cc990e9abcc525 100644
|
||||||
|
--- a/test/run-test.sh
|
||||||
|
+++ b/test/run-test.sh
|
||||||
|
@@ -239,19 +239,19 @@ fi
|
||||||
|
|
||||||
|
rm -rf $MyPWD/sysroot
|
||||||
|
|
||||||
|
-dotest "deleting .uuid file on empty dir"
|
||||||
|
-prep
|
||||||
|
-cp $FONT1 $FONT2 $FONTDIR
|
||||||
|
-$FCCACHE $FONTDIR
|
||||||
|
-sleep 1
|
||||||
|
-rm -f $FONTDIR/*pcf
|
||||||
|
-$FCCACHE $FONTDIR
|
||||||
|
-rmdir $FONTDIR > /dev/null 2>&1
|
||||||
|
-if [ $? != 0 ]; then
|
||||||
|
- echo "*** Test failed: $TEST"
|
||||||
|
- echo "$FONTDIR isn't empty"
|
||||||
|
- ls -al $FONTDIR
|
||||||
|
- exit 1
|
||||||
|
-fi
|
||||||
|
+# dotest "deleting .uuid file on empty dir"
|
||||||
|
+# prep
|
||||||
|
+# cp $FONT1 $FONT2 $FONTDIR
|
||||||
|
+# $FCCACHE $FONTDIR
|
||||||
|
+# sleep 1
|
||||||
|
+# rm -f $FONTDIR/*pcf
|
||||||
|
+# $FCCACHE $FONTDIR
|
||||||
|
+# rmdir $FONTDIR > /dev/null 2>&1
|
||||||
|
+# if [ $? != 0 ]; then
|
||||||
|
+# echo "*** Test failed: $TEST"
|
||||||
|
+# echo "$FONTDIR isn't empty"
|
||||||
|
+# ls -al $FONTDIR
|
||||||
|
+# exit 1
|
||||||
|
+# fi
|
||||||
|
|
||||||
|
rm -rf $FONTDIR $CACHEFILE $CACHEDIR $FONTCONFIG_FILE out
|
@ -1,3 +1,12 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Feb 9 23:34:45 UTC 2019 - Atri Bhattacharya <badshah400@gmail.com>
|
||||||
|
|
||||||
|
- Add fontconfig-do-not-remove-UUID-file.patch: Removing .uuid
|
||||||
|
files caused frequent rescanning of all system fonts causing
|
||||||
|
intermittent CPU usage surges, for example, when browsing using
|
||||||
|
firefox; patch taken from upstream commit (boo#1124816,
|
||||||
|
https://gitlab.freedesktop.org/fontconfig/fontconfig/merge_requests/8).
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Sat Jan 12 12:07:28 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
|
Sat Jan 12 12:07:28 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
|
||||||
|
|
||||||
|
@ -27,6 +27,8 @@ Url: http://fontconfig.org/
|
|||||||
Source0: http://fontconfig.org/release/%{name}-%{version}.tar.bz2
|
Source0: http://fontconfig.org/release/%{name}-%{version}.tar.bz2
|
||||||
Source4: baselibs.conf
|
Source4: baselibs.conf
|
||||||
Source5: local.conf
|
Source5: local.conf
|
||||||
|
# PATCH-FIX-UPSTREAM fontconfig-do-not-remove-UUID-file.patch boo#1124816 badshah400@gmail.com -- Removing .uuid files caused frequent rescanning of all system fonts causing intermittent CPU usage surges, for example, when browsing using firefox; patch taken from upstream commit
|
||||||
|
Patch0: fontconfig-do-not-remove-UUID-file.patch
|
||||||
BuildRequires: automake >= 1.11
|
BuildRequires: automake >= 1.11
|
||||||
BuildRequires: gperf
|
BuildRequires: gperf
|
||||||
BuildRequires: libtool
|
BuildRequires: libtool
|
||||||
@ -90,6 +92,7 @@ fontconfig library.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
|
%patch0 -p1
|
||||||
# use suse-specific doc path:
|
# use suse-specific doc path:
|
||||||
find -name \*.1 -o -name \*.sgml -exec sed -i -e 's/usr\/share\/doc\/fontconfig/usr\/share\/doc\/packages\/fontconfig/g' {} +
|
find -name \*.1 -o -name \*.sgml -exec sed -i -e 's/usr\/share\/doc\/fontconfig/usr\/share\/doc\/packages\/fontconfig/g' {} +
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user