diff options
author | Schala | 2017-06-09 19:58:50 -0700 |
---|---|---|
committer | Schala | 2017-06-09 19:58:50 -0700 |
commit | e3ab3fbf9de007a292938aabf92eb9d395916d4a (patch) | |
tree | d3f50ec3619b04ae3a5a23a96cf957fe0864d221 | |
parent | 2aeb8755b447b400cc8f9484e88311a01919ef7c (diff) | |
download | aur-e3ab3fbf9de007a292938aabf92eb9d395916d4a.tar.gz |
fix cache update
-rw-r--r-- | .SRCINFO | 6 | ||||
-rw-r--r-- | PKGBUILD | 9 | ||||
-rw-r--r-- | fix-cache-update.patch | 59 |
3 files changed, 69 insertions, 5 deletions
@@ -1,9 +1,9 @@ # Generated by mksrcinfo v8 -# Wed May 31 22:48:06 UTC 2017 +# Sat Jun 10 02:58:34 UTC 2017 pkgbase = mingw-w64-fontconfig pkgdesc = A library for configuring and customizing font access (mingw-w64) pkgver = 2.12.3 - pkgrel = 1 + pkgrel = 2 url = https://www.freedesktop.org/wiki/Software/fontconfig/ arch = any license = custom @@ -21,9 +21,11 @@ pkgbase = mingw-w64-fontconfig source = git+https://anongit.freedesktop.org/git/fontconfig#commit=690f822a1b26b089d86e9843746cab80f3c07fe3 source = 0001-fix-config-linking.all.patch source = 0007-pkgconfig.mingw.patch + source = fix-cache-update.patch sha256sums = SKIP sha256sums = 1266d4bbd8270f013fee2401c890f0251babf50a175a69d681d3a6af5003c899 sha256sums = af373531873da46d0356305da5444c1ec74f443cd2635ea2db6b7dadd1561f5b + sha256sums = f0d9cab1cc7f6c45303f1ff31c6c52641a2101b4b3c4788fe89c2748ffa48621 pkgname = mingw-w64-fontconfig @@ -1,6 +1,6 @@ pkgname=mingw-w64-fontconfig pkgver=2.12.3 -pkgrel=1 +pkgrel=2 _commit=690f822a1b26b089d86e9843746cab80f3c07fe3 # tags/2.12.3^0 pkgdesc="A library for configuring and customizing font access (mingw-w64)" arch=(any) @@ -11,10 +11,12 @@ depends=(mingw-w64-expat mingw-w64-freetype2) options=(staticlibs !strip !buildflags) source=("git+https://anongit.freedesktop.org/git/fontconfig#commit=$_commit" "0001-fix-config-linking.all.patch" -"0007-pkgconfig.mingw.patch") +"0007-pkgconfig.mingw.patch" +"fix-cache-update.patch") sha256sums=('SKIP' '1266d4bbd8270f013fee2401c890f0251babf50a175a69d681d3a6af5003c899' - 'af373531873da46d0356305da5444c1ec74f443cd2635ea2db6b7dadd1561f5b') + 'af373531873da46d0356305da5444c1ec74f443cd2635ea2db6b7dadd1561f5b' + 'f0d9cab1cc7f6c45303f1ff31c6c52641a2101b4b3c4788fe89c2748ffa48621') _architectures="i686-w64-mingw32 x86_64-w64-mingw32" @@ -25,6 +27,7 @@ pkgver() { prepare() { cd fontconfig + patch -p1 -i ${srcdir}/fix-cache-update.patch patch -p1 -i ${srcdir}/0001-fix-config-linking.all.patch patch -p1 -i ${srcdir}/0007-pkgconfig.mingw.patch NOCONFIGURE=1 ./autogen.sh diff --git a/fix-cache-update.patch b/fix-cache-update.patch new file mode 100644 index 000000000000..1f29a8777a6b --- /dev/null +++ b/fix-cache-update.patch @@ -0,0 +1,59 @@ +From 79058f4e911487275323e93146e1e93ad15afcd8 Mon Sep 17 00:00:00 2001 +From: Masamichi Hosoda <trueroad@trueroad.jp> +Date: Wed, 11 Jan 2017 20:42:56 +0900 +Subject: Bug 99360 - Fix cache file update on MinGW + +On Windows, opened or locked files cannot be removed. +Since fontconfig locked an old cache file while updating the file, +fontconfig failed to replace the file with updated file on Windows. + +This patch makes fontconfig does not lock the old cache file +while updating it on Windows. + +diff --git a/src/fcdir.c b/src/fcdir.c +index fd62a34..c8aaf54 100644 +--- a/src/fcdir.c ++++ b/src/fcdir.c +@@ -362,7 +362,9 @@ FcDirCacheScan (const FcChar8 *dir, FcConfig *config) + if (!dirs) + goto bail1; + ++#ifndef _WIN32 + fd = FcDirCacheLock (dir, config); ++#endif + /* + * Scan the dir + */ +@@ -382,7 +384,9 @@ FcDirCacheScan (const FcChar8 *dir, FcConfig *config) + FcDirCacheWrite (cache, config); + + bail2: ++#ifndef _WIN32 + FcDirCacheUnlock (fd); ++#endif + FcStrSetDestroy (dirs); + bail1: + FcFontSetDestroy (set); +@@ -417,7 +421,9 @@ FcDirCacheRescan (const FcChar8 *dir, FcConfig *config) + if (!dirs) + goto bail; + ++#ifndef _WIN32 + fd = FcDirCacheLock (dir, config); ++#endif + /* + * Scan the dir + */ +@@ -436,7 +442,9 @@ FcDirCacheRescan (const FcChar8 *dir, FcConfig *config) + FcDirCacheWrite (new, config); + + bail1: ++#ifndef _WIN32 + FcDirCacheUnlock (fd); ++#endif + FcStrSetDestroy (dirs); + bail: + if (d) +-- +cgit v0.10.2 + |