1. 22 Sep, 2005 1 commit
    • Patrick Lam's avatar
      Fix more gcc4 warnings: · 67accef4
      Patrick Lam authored
      - Cast sizeof to int, to shut up signedness warnings in comparison.
      - Add consts where appropriate.
      reviewed by: Patrick Lam <plam@mit.edu>
      67accef4
  2. 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
  3. 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
  4. 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
  5. 07 Dec, 2004 1 commit
  6. 15 Aug, 2003 1 commit
  7. 24 Apr, 2003 1 commit
  8. 18 Mar, 2003 1 commit
  9. 05 Mar, 2003 1 commit
  10. 06 Feb, 2003 1 commit
  11. 31 Aug, 2002 1 commit
  12. 22 Aug, 2002 1 commit
  13. 13 Jul, 2002 1 commit
  14. 09 Jul, 2002 1 commit
  15. 06 Jul, 2002 1 commit
  16. 29 Jun, 2002 1 commit
  17. 26 Jun, 2002 1 commit
  18. 21 Jun, 2002 1 commit
  19. 31 May, 2002 2 commits
  20. 29 May, 2002 2 commits
  21. 24 May, 2002 1 commit
  22. 27 Mar, 2002 1 commit
  23. 03 Mar, 2002 1 commit
  24. 19 Feb, 2002 1 commit
  25. 18 Feb, 2002 1 commit
  26. 15 Feb, 2002 1 commit
  27. 14 Feb, 2002 1 commit