1. 14 Feb, 2009 7 commits
  2. 04 May, 2008 1 commit
  3. 18 Apr, 2008 1 commit
  4. 08 Jan, 2008 1 commit
  5. 14 Nov, 2007 1 commit
    • Tor Lillqvist's avatar
      Workaround for stat() brokenness in Microsoft's C library (bug 8526) · 8a3dc488
      Tor Lillqvist authored
      Fix a couple of longstanding problems with fontconfig on Windows that
      manifest themselves especially in GIMP. The root cause to the problems is in
      Microsoft's incredibly stupid stat() implementation. Basically, stat()
      returns wrong timestamp fields for files on NTFS filesystems on machines
      that use automatic DST switching.
      See for instance http://bugzilla.gnome.org/show_bug.cgi?id=154968 and
      As fccache.c now looks at more fields in the stat struct I fill in them all.
      I noticed that fstat() is used only on a fd just after opening it, so on
      Win32 I just call my stat() replacement before opening instead...
      Implementing a good replacement for fstat() would be harder because the code
      in fccache.c wants to compare inode numbers. There are no (readily
      accessible) inode numbers on Win32, so I fake it with the hash of the full
      file name, in the case as it is on disk. And fstat() doesn't know the full
      file name, so it would be rather hard to come up with a inode number to
      identify the file.
      The patch also adds similar handling for the cache directory as for the fonts
      directory: If a cachedir element in fonts.conf contains the magic string
      "WINDOWSTEMPDIR_FONTCONFIG_CACHE" it is replaced at runtime with a path under
      the machine's (or user's) temp folder as returned by GetTempPath(). I don't
      want to hardcode any pathnames in a fonts.conf intended to be distributed to
      end-users, most of which who wouldn't know how to edit it anyway. And
      requiring an installer to edit it gets complicated.
  6. 04 Nov, 2007 1 commit
  7. 25 Oct, 2007 1 commit
  8. 18 Oct, 2007 5 commits
  9. 27 Oct, 2006 1 commit
  10. 14 Sep, 2006 1 commit
  11. 04 Sep, 2006 1 commit
    • Keith Packard's avatar
      Hide private functions in shared library. Export functionality for utilities. · 4984242e
      Keith Packard authored
      Borrowing header stuff written for cairo, fontconfig now exposes in the
      shared library only the symbols which are included in the public header
      files. All private symbols are hidden using suitable compiler directives.
      A few new public functions were required for the fontconfig utility programs
      (fc-cat and fc-cache) so those were added, bumping the .so minor version number
      in the process.
  12. 03 Sep, 2006 1 commit
  13. 02 Sep, 2006 1 commit
  14. 01 Sep, 2006 3 commits
  15. 31 Aug, 2006 3 commits
    • Keith Packard's avatar
      Revert ABI changes from version 2.3 · f57783d2
      Keith Packard authored
      Accidental ABI changes and additions were discovered by looking at the
      differences in fontconfig.h. All of those have been reverted.
    • Keith Packard's avatar
      Automatically remove invalid cache files. · d8ab9e6c
      Keith Packard authored
      Cache files for missing or more recently modified directories are
      automatically removed at the end of every fc-cache run.
    • Keith Packard's avatar
      Skip broken caches. Cache files are auto-written, don't rewrite in fc-cache. · 2d3387fd
      Keith Packard authored
      Validate cache contents and skip broken caches, looking down cache path for
      valid ones.
      Every time a directory is scanned, it will be written to a cache file if
      possible, so fc-cache doesn't need to re-write the cache file. This makes
      detecting when the cache was generated a bit tricky, so we guess that if the
      cache wasn't valid before running and is valid afterwards, the cache file
      was written.
      Also, allow empty charsets to be serialized with null leaves/numbers.
      Eliminate a leak in FcEdit by switching to FcObject sooner.
      Call FcFini from fc-match to make valgrind happy.
  16. 28 Aug, 2006 3 commits
  17. 04 Aug, 2006 1 commit
  18. 25 Apr, 2006 1 commit
  19. 07 Apr, 2006 2 commits
  20. 06 Apr, 2006 1 commit
  21. 18 Feb, 2006 1 commit
  22. 16 Feb, 2006 2 commits