1. 10 Sep, 2011 1 commit
  2. 31 May, 2011 1 commit
  3. 29 May, 2011 4 commits
  4. 28 May, 2011 1 commit
  5. 27 May, 2011 2 commits
  6. 16 Mar, 2011 1 commit
  7. 12 Feb, 2011 2 commits
    • Martin Szulecki's avatar
      Make sure install_name_tool on OSX picks up library install path · 5e44b6bf
      Martin Szulecki authored
      This allows dylib to correctly find the library and fixes linking on OSX.
      5e44b6bf
    • Christophe Fergeau's avatar
      Fix Dictionary copy constructor · be225ca1
      Christophe Fergeau authored
      While iterating over all the keys stored in the source Dictionary
      to copy them to create the copied Dictonary, the name of the key
      being copied was only set to a non-NULL value for the first key
      we copy. This was then leading to an assertion when trying to
      create a std::string from a NULL pointer. Simple test-case:
      
      int main()
      {
      	PList::Dictionary a;
      	PList::String b("Hello");
      	PList::String c("Hi!");
      	PList::Dictionary d;
      
      	a.Insert("Key", &b);
      	a.Insert("Another Key", &c);
      	std::cout << a.ToXml() << std::endl;
      
      	d.Insert("dictionary", &a); //CRAAAAAAAAASH!
      	std::cout << d.ToXml() << std::endl;
      	return 0;
      }
      /* Output:
      <?xml version="1.0" encoding="UTF-8"?>
      <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
      <plist version="1.0">
      <dict>
      	<key>Key</key>
      	<string>Hello</string>
      	<key>Another Key</key>
      	<string>Hi!</string>
      </dict>
      </plist>
      
      terminate called after throwing an instance of 'std::logic_error'
        what():  basic_string::_S_construct NULL not valid
      */
      Signed-off-by: 's avatarMartin Szulecki <opensuse@sukimashita.com>
      be225ca1
  8. 23 Aug, 2010 1 commit
    • Dogbert's avatar
      Fixes the xml export. · 9ed6e05b
      Dogbert authored
      Apple's activation server refuses XML tickets when this patch isn't applied.
      9ed6e05b
  9. 29 Jul, 2010 1 commit
  10. 18 Apr, 2010 1 commit
    • Julien BLACHE's avatar
      Endianness, alignment and type-punning fixes for binary plist support · 33b8a128
      Julien BLACHE authored
       - endianness issues: on big endian machines, writing out only part
         of an integer was broken (get_needed_bytes(x) < sizeof(x))
          -> shift integer before memcpy() on big endian machines
      
       - alignment issues: unaligned reads when loading binary plist. Leads
         to slow runtime performance (kernel trapping and fixing things up),
         SIGBUS (kernel not helping us out)
          -> introduce get_unaligned() and have the compiler generate the code
             needed for the unaligned access
         (note that there remains unaligned accesses that I haven't been able
          to track down - I've seen 2 of them with test #2)
      
       - type-punning issues: breaking strict aliasing rules can lead to
         unexpected results as the compiler takes full advantage of the aliasing
         while optimizing
          -> introduce the plist_uint_ptr union instead of casting pointers
      
      Tested on amd64, alpha and hppa.
      33b8a128
  11. 06 Apr, 2010 2 commits
  12. 24 Mar, 2010 1 commit
    • Alexander Sack's avatar
      Fix armel floating point endianess (LP: #541879) · e965b325
      Alexander Sack authored
      * on armel system floating poing data can have different endianess than
        rest of types; hence we fix arm endianess for defined(__VFP_FP__) to
        be big/native; this also applies for data parsing/writing
      * date parsing didnt flip the endianess back for little endian systems
        when reading the values causing test failures; we fix this by ensuring
        float endianess is applied when parsing
      e965b325
  13. 03 Mar, 2010 1 commit
  14. 21 Jan, 2010 1 commit
  15. 14 Jan, 2010 1 commit
  16. 28 Nov, 2009 1 commit
  17. 19 Nov, 2009 2 commits
    • Christophe Fergeau's avatar
      don't leak GNodes in plist_free · 804032e9
      Christophe Fergeau authored
      Before recursing over its children, plist_free_node started by
      detaching the current GNode from its parent which means that
      calling g_node_destroy on the root of the tree was freeing only
      the top-level GNode while what was intended was to free the whole
      tree. Don't leak memory by not detaching children GNodes from their
      parents so that g_node_destroy on the toplevel GNode can clean
      everything.
      804032e9
    • Christophe Fergeau's avatar
      add missing break; in switch statement · d503698b
      Christophe Fergeau authored
      The 2nd missing break was harmless since it fell through the default: case
      which has a break, but it makes things more robust if we were ever to add
      new cases to this switch. The 1st missing break; was causing warnings in
      valgrind since we ended up calling strdup on a memory zone not containing
      a \0 character.
      d503698b
  18. 11 Nov, 2009 1 commit
  19. 10 Nov, 2009 5 commits
  20. 04 Nov, 2009 1 commit
  21. 28 Oct, 2009 3 commits
  22. 26 Oct, 2009 2 commits
  23. 18 Oct, 2009 1 commit
  24. 17 Oct, 2009 2 commits
  25. 16 Oct, 2009 1 commit