1. 11 Jun, 2018 2 commits
  2. 08 Jun, 2018 1 commit
  3. 25 May, 2018 7 commits
  4. 16 May, 2018 1 commit
    • Chris Lamb's avatar
      Ensure cache checksums are deterministic · f098adac
      Chris Lamb authored
      Whilst working on the Reproducible Builds[0] effort, we noticed that
      fontconfig generates unreproducible cache files.
      
      This is due to fc-cache uses the modification timestamps of each
      directory in the "checksum" and "checksum_nano" members of the _FcCache
      struct. This is so that it can identify which cache files are valid
      and/or require regeneration.
      
      This patch changes the behaviour of the checksum calculations to prefer
      the value of the SOURCE_DATE_EPOCH[1] environment variable over the
      directory's own mtime. This variable can then be exported by build
      systems to ensure reproducible output.
      
      If SOURCE_DATE_EPOCH is not set or is newer than the mtime of the
      directory, the existing behaviour is unchanged.
      
      This work was sponsored by Tails[2].
      
       [0] https://reproducible-builds.org/
       [1] https://reproducible-builds.org/specs/source-date-epoch/
       [2] https://tails.boum.org/
      f098adac
  5. 13 May, 2018 2 commits
  6. 11 May, 2018 4 commits
  7. 05 May, 2018 1 commit
  8. 19 Apr, 2018 1 commit
  9. 17 Apr, 2018 1 commit
    • Tom Anderson's avatar
      Use realfilename for FcOpen in _FcConfigParse · 7ad010e8
      Tom Anderson authored
      realfilename is the file name after sysroot adjustments.  It should be used
      instead of filename in the call to FcOpen() which forwards the name directly to
      open().
      
      Though I don't explicitly request a sysroot, I was getting error messages saying
      "failed reading config file".  This CL fixes the error spam.
      7ad010e8
  10. 16 Apr, 2018 1 commit
    • Tom Anderson's avatar
      Fix undefined-shift UBSAN errors · c60ed9ef
      Tom Anderson authored
      The expression "1 << 31" will cause UBSAN to complain with this error message:
      runtime error: left shift of 1 by 31 places cannot be represented in type 'int'
      
      The same operation on unsigned types is fine, however.  This CL replaces the
      strings "1 <<" with "1U <<".
      c60ed9ef
  11. 31 Mar, 2018 2 commits
    • Behdad Esfahbod's avatar
      Share name-mapping across instances · a8a6efa8
      Behdad Esfahbod authored
      Continuation of previous commit.
      
      Makes scanning Voto Serif GX fast again.
      a8a6efa8
    • Behdad Esfahbod's avatar
      Fix name scanning · fa13f883
      Behdad Esfahbod authored
      In 161c7385 I switched from linear name scanning to binary searching.
      That, however, ignored the fact that there might be more than one
      name table entry for each pair we want to query.
      
      To fix that and retain bsearch, I now get all name entries first,
      sort them, and use for bsearching.
      
      This fixes https://bugs.freedesktop.org/show_bug.cgi?id=105756
      
      This makes scaning Voto Serif GX twice slower though, since we are
      creating and sorting the list for each instance. In the next commit,
      I'll share this list across different instances to fix this.
      fa13f883
  12. 28 Mar, 2018 2 commits
  13. 15 Mar, 2018 3 commits
  14. 14 Mar, 2018 3 commits
  15. 12 Mar, 2018 1 commit
  16. 10 Mar, 2018 1 commit
  17. 09 Mar, 2018 1 commit
  18. 08 Mar, 2018 1 commit
  19. 06 Mar, 2018 2 commits
  20. 02 Mar, 2018 2 commits
  21. 19 Feb, 2018 1 commit