- 26 Sep, 2011 5 commits
-
-
Bryan Forbes authored
-
Nikias Bassen authored
-
Nikias Bassen authored
-
Nikias Bassen authored
-
Nikias Bassen authored
-
- 10 Sep, 2011 1 commit
-
-
Nikias Bassen authored
-
- 25 Jun, 2011 4 commits
-
-
Nikias Bassen authored
-
Nikias Bassen authored
-
Nikias Bassen authored
-
Nikias Bassen authored
-
- 13 Jun, 2011 5 commits
-
-
Nikias Bassen authored
-
Nikias Bassen authored
-
Nikias Bassen authored
-
Nikias Bassen authored
-
Matthias Klose authored
-
- 31 May, 2011 1 commit
-
-
Nikias Bassen authored
-
- 29 May, 2011 4 commits
-
-
Nikias Bassen authored
-
Nikias Bassen authored
-
Nikias Bassen authored
-
Nikias Bassen authored
-
- 28 May, 2011 1 commit
-
-
Nikias Bassen authored
-
- 27 May, 2011 5 commits
-
-
Nikias Bassen authored
-
Nikias Bassen authored
-
Nikias Bassen authored
-
Nikias Bassen authored
-
Nikias Bassen authored
-
- 20 Mar, 2011 3 commits
-
-
Martin Szulecki authored
-
Martin Szulecki authored
-
Martin Szulecki authored
-
- 16 Mar, 2011 1 commit
-
-
Christophe Fergeau authored
-
- 12 Feb, 2011 4 commits
-
-
Martin Szulecki authored
This allows dylib to correctly find the library and fixes linking on OSX.
-
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:
Martin Szulecki <opensuse@sukimashita.com>
-
Martin Szulecki authored
-
Martin Szulecki authored
-
- 23 Aug, 2010 1 commit
-
-
Dogbert authored
Apple's activation server refuses XML tickets when this patch isn't applied.
-
- 29 Jul, 2010 1 commit
-
-
Jonathan Beck authored
-
- 18 Apr, 2010 4 commits
-
-
Patrick von Reth authored
-
Jonathan Beck authored
-
Jonathan Beck authored
-
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.
-