1. 13 Nov, 2016 4 commits
  2. 10 Nov, 2016 5 commits
  3. 09 Nov, 2016 1 commit
  4. 31 Oct, 2016 4 commits
  5. 24 Oct, 2016 1 commit
  6. 22 Oct, 2016 1 commit
  7. 19 Sep, 2016 1 commit
  8. 18 Sep, 2016 1 commit
    • Nikias Bassen's avatar
      Change internal storage of PLIST_DATE values from struct timeval to double · 912cb459
      Nikias Bassen authored
      This removes the timeval union member from the plist_data_t structure.
      Since struct timeval is 2x64bit on 64bit platforms this member unnecessarily
      grew the union size to 16 bytes while a size of 8 bytes is sufficient.
      Also, on 32bit platforms struct timeval is only 2x32bit of size, limiting the
      range of possible time values. In addition the binary property list format
      also stores PLIST_DATE nodes as double.
      912cb459
  9. 08 Sep, 2016 1 commit
  10. 29 Jun, 2016 2 commits
    • Nikias Bassen's avatar
      xplist: Plug memory leak when converting PLIST_UID nodes to XML · 16f45a04
      Nikias Bassen authored
      In node_to_xml nodes of type PLIST_UID are temporarily converted
      to a PLIST_DICT for an appropriate XML output. Therefore a PLIST_KEY
      and a PLIST_UINT node is created and inserted into the PLIST_DICT
      node. Upon completion, the child nodes of the PLIST_DICT node are
      detached from the original node and freed, however the data of the
      child nodes - the key string and the uint value - are not.
      This commit fixes it.
      16f45a04
    • Nikias Bassen's avatar
      plist_data_compare: Make sure to compare the node sizes for integer nodes · acd226d1
      Nikias Bassen authored
      Without this check, e.g. the values -1 and 18446744073709551615 would yield in a
      match, since the comparison will just compare the uint64_t values. However, any
      value >= 9223372036854775808 and <= 18446744073709551615 is stored as a 128 bit
      value in binary plist format to make sure it is recognized as an unsigned value.
      We store it internally as a uint64_t value, but we set the size to 16 vs. 8
      accordingly; so this commit will make sure the binary plist optimization will
      not re-use matching uint64_t values of actually mismatching signed/unsigned values.
      acd226d1
  11. 12 May, 2016 3 commits
  12. 20 Apr, 2016 1 commit
  13. 07 Dec, 2015 1 commit
  14. 13 Nov, 2015 1 commit
  15. 05 Feb, 2015 1 commit
  16. 31 Jan, 2015 2 commits
  17. 28 Jan, 2015 1 commit
  18. 23 Jan, 2015 3 commits
  19. 11 Jan, 2015 1 commit
  20. 09 Oct, 2014 1 commit
    • Martin Szulecki's avatar
      bplist: Fix plist_from_bin() changing value nodes to key nodes in dictionaries · b3ab0a42
      Martin Szulecki authored
      The parsing logic for binary dictionaries wrongly enforced the key type even
      on nodes that were already parsed as value nodes. This caused the resulting
      plist_t node tree to have key nodes instead of value nodes within dictionaries
      for some valid binary plists. This commit should also generally fixes parsing
      of binary plist files which use an efficient dictionary reference table.
      b3ab0a42
  21. 03 Oct, 2014 2 commits
  22. 23 Sep, 2014 1 commit
  23. 19 Sep, 2014 1 commit