1. 20 Dec, 2013 1 commit
  2. 30 Dec, 2012 1 commit
  3. 10 Nov, 2010 1 commit
  4. 12 Apr, 2010 1 commit
  5. 13 Mar, 2009 1 commit
  6. 14 Feb, 2009 1 commit
  7. 05 Sep, 2006 1 commit
    • Keith Packard's avatar
      Eliminate .so PLT entries for local symbols. (thanks to Arjan van de Ven) · 23816bf9
      Keith Packard authored
      Using a simple shell script that processes the public headers, two header
      files are constructed that map public symbols to hidden internal aliases
      avoiding the assocated PLT entry for referring to a public symbol.
      
      A few mistakes in the FcPrivate/FcPublic annotations were also discovered
      through this process
      23816bf9
  8. 30 Aug, 2006 1 commit
    • Keith Packard's avatar
      Rework cache files to use offsets for all data structures. · 7ce19673
      Keith Packard authored
      Replace all of the bank/id pairs with simple offsets, recode several
      data structures to always use offsets inside the library to avoid
      conditional paths. Exposed data structures use pointers to hold offsets,
      setting the low bit to distinguish between offset and pointer.
      
      Use offset-based data structures for lang charset encodings; eliminates
      separate data structure format for that file.
      
      Much testing will be needed; offsets are likely not detected everywhere in
      the library yet.
      7ce19673
  9. 25 Apr, 2006 1 commit
  10. 07 Apr, 2006 1 commit
  11. 03 Mar, 2006 1 commit
  12. 06 Feb, 2006 2 commits
  13. 04 Feb, 2006 1 commit
  14. 25 Nov, 2005 1 commit
  15. 17 Nov, 2005 1 commit
  16. 16 Nov, 2005 1 commit
  17. 31 Aug, 2005 1 commit
  18. 27 Aug, 2005 1 commit
  19. 24 Aug, 2005 1 commit
    • Patrick Lam's avatar
      Overhaul the serialization system to create one mmapable file per directory · 4262e0b3
      Patrick Lam authored
          and distribute bytes for each directory from a single malloc for that
          directory. Store pointers as differences between the data pointed to
          and the pointer's address (s_off = s - v). Don't serialize data
          structures that never actually get serialized. Separate strings used
          for keys from strings used for values (in FcPatternElt and FcValue,
          respectively). Bump FC_CACHE_VERSION to 2.
      4262e0b3
  20. 25 Jul, 2005 1 commit
    • Patrick Lam's avatar
      #ifdef out old cache stuff, replace with first version of new mmapping · 212c9f43
      Patrick Lam authored
          cache. Add *Read and *Write procedures which mmap in and write out the
          fontconfig data structures to disk. Currently, create cache in /tmp,
          with different sections for each architecture (as returned by uname's
          .machine field. Run the fc-cache binary to create a new cache file;
          fontconfig then uses this cache file on subsequent runs, saving lots of
          memory. Also fixes a few bugs and leaks.
      212c9f43
  21. 28 Jun, 2005 1 commit
    • Patrick Lam's avatar
      Add functionality to allow fontconfig data structure serialization. · cd2ec1a9
      Patrick Lam authored
      This patch allows the fundamental fontconfig data structures to be
          serialized. I've converted everything from FcPattern down to be able to
          use *Ptr objects, which can be either static or dynamic (using a union
          which either contains a pointer or an index) and replaced storage of
          pointers in the heap with the appropriate *Ptr object. I then changed
          all writes of pointers to the heap with a *CreateDynamic call, which
          creates a dynamic Ptr object pointing to the same object as before.
          This way, the fundamental fontconfig semantics should be unchanged; I
          did not have to change external signatures this way, although I did
          change some internal signatures. When given a *Ptr object, just run *U
          to get back to a normal pointer; it gives the right answer regardless
          of whether we're using static or dynamic storage.
      I've also implemented a Fc*Serialize call. Calling FcFontSetSerialize
          converts the dynamic FcFontSets contained in the config object to
          static FcFontSets and also converts its dependencies (e.g. everything
          you'd need to write to disk) to static objects. Note that you have to
          call Fc*PrepareSerialize first; this call will count the number of
          objects that actually needs to be allocated, so that we can avoid
          realloc. The Fc*Serialize calls then check the static pointers for
          nullness, and allocate the buffers if necessary. I've tested the
          execution of fc-list and fc-match after Fc*Serialize and they appear to
          work the same way.
      cd2ec1a9
  22. 07 Dec, 2004 1 commit
  23. 05 Mar, 2003 1 commit
  24. 14 Feb, 2002 1 commit