[Fontconfig-bugs] [Bug 82358] New: FcAtomicLock fails on OS X on network mounts

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Fri Aug 8 09:59:58 PDT 2014


https://bugs.freedesktop.org/show_bug.cgi?id=82358

          Priority: medium
            Bug ID: 82358
          Assignee: fontconfig-bugs at lists.freedesktop.org
           Summary: FcAtomicLock fails on OS X on network mounts
        QA Contact: freedesktop at behdad.org
          Severity: normal
    Classification: Unclassified
                OS: Mac OS X (All)
          Reporter: michael-lists at physcip.uni-stuttgart.de
          Hardware: x86-64 (AMD64)
            Status: NEW
           Version: 2.11
         Component: library
           Product: fontconfig

On OS X systems (in my case, OS X 10.9.4), if the cache folder is on a mounted
network share (e.g. because the user's home directory is on an SMB or AFP
server), running fc-cache will fail to write to ~/.cache/fontconfig. This means
the lengthy caching process is performed every time fontconfig is used.

The issue can be fixed by applying the patch below as evidently, OS X returns
ENOTSUP when link() is performed on a file system that does not support
hardlinks instead of EPERM.

The issue occurs in fontconfig 2.10 and 2.11, possibly older ones as well.

--- src/fcatomic.c.orig    2012-05-28 15:58:56.000000000 +0900
+++ src/fcatomic.c    2014-08-07 11:47:45.000000000 +0200
@@ -131,7 +131,7 @@ FcAtomicLock (FcAtomic *atomic)
        return FcFalse;
     }
     ret = link ((char *) atomic->tmp, (char *) atomic->lck);
-    if (ret < 0 && errno == EPERM)
+    if (ret < 0 && (errno == EPERM || errno == ENOTSUP))
     {
        /* the filesystem where atomic->lck points to may not supports
         * the hard link. so better try to fallback

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/fontconfig-bugs/attachments/20140808/3e6106db/attachment.html>


More information about the Fontconfig-bugs mailing list