Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2011-05-29 | Use malloc+snprintf instead of asprintf | Nikias Bassen | 1 | -2/+4 | |
2011-05-29 | user CMAKE_C_OUTPUT_EXTENSION instead of .o | Nikias Bassen | 1 | -5/+5 | |
2011-05-28 | define be16toh, be32toh, be64toh if not available | Nikias Bassen | 1 | -0/+34 | |
2011-05-28 | Add missing include | Nikias Bassen | 1 | -0/+1 | |
2011-05-27 | Make libplist glib free | Nikias Bassen | 14 | -204/+866 | |
2011-03-16 | Plugging memory leak in write_unicode | Christophe Fergeau | 1 | -0/+1 | |
2011-02-12 | Make sure install_name_tool on OSX picks up library install path | Martin Szulecki | 1 | -0/+6 | |
This allows dylib to correctly find the library and fixes linking on OSX. | |||||
2011-02-12 | Fix Dictionary copy constructor | Christophe Fergeau | 1 | -1/+1 | |
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> | |||||
2010-08-23 | Fixes the xml export. | Dogbert | 1 | -2/+2 | |
Apple's activation server refuses XML tickets when this patch isn't applied. | |||||
2010-07-29 | Fix unicode binary writing. | Jonathan Beck | 1 | -7/+23 | |
2010-04-18 | Endianness, alignment and type-punning fixes for binary plist support | Julien BLACHE | 1 | -13/+63 | |
- 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. | |||||
2010-04-06 | plist_to_xml: use POSIX locale to make sure '.' is used for floats | Nikias Bassen | 1 | -0/+14 | |
In locales like German, a ',' is used as a decimal separator. When the program calling plist_to_xml uses LC_NUMBER with something different than a '.', parsing of the resulting XML document fails. This patch fixes it. | |||||
2010-04-06 | plist_to_xml: copy terminating 0-byte given from xmlDocDumpMemory | Nikias Bassen | 1 | -2/+3 | |
This makes it possible to process the resulting char* directly as a c-string without further copying. | |||||
2010-03-24 | Fix armel floating point endianess (LP: #541879) | Alexander Sack | 1 | -6/+26 | |
* 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 | |||||
2010-03-03 | Copy xml buffer to malloced buffer to prevent free / xmlFree mixing. | Jonathan Beck | 1 | -2/+9 | |
2010-01-21 | Fix some warnings | Jonathan Beck | 3 | -38/+6 | |
2010-01-14 | Make sure to convert predefined xml entities in xml output | Martin Szulecki | 1 | -1/+6 | |
For string nodes, a set of special characters must be converted to predefined xml entities. This patch adds an entitiy test case for this and makes libplist pass it fine by explicitly adding text nodes. | |||||
2009-11-28 | Remove last includes of non-existing Utils.h | Martin Szulecki | 2 | -2/+0 | |
2009-11-19 | don't leak GNodes in plist_free | Christophe Fergeau | 1 | -1/+1 | |
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. | |||||
2009-11-19 | add missing break; in switch statement | Christophe Fergeau | 1 | -0/+2 | |
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. | |||||
2009-11-11 | Fix removal of the Utils class. | Jonathan Beck | 3 | -7/+6 | |
2009-11-11 | Move some methods and drop Utils class in C++ binding. | Jonathan Beck | 4 | -110/+83 | |
2009-11-10 | Remove deprecated functions from API. | Jonathan Beck | 1 | -189/+0 | |
2009-11-10 | Do not free plist node twice in Dictionary destructor. | Jonathan Beck | 1 | -1/+0 | |
2009-11-10 | Do not export internal functions symbols. | Jonathan Beck | 1 | -4/+4 | |
2009-11-10 | Remove wrongly exposed SetParent method. | Jonathan Beck | 4 | -18/+18 | |
2009-11-04 | Add GetNodeIdex and GetNodeKey methods. | Jonathan Beck | 2 | -0/+18 | |
2009-10-28 | Format sources to ANSI style using AStyle (astyle --style=ansi). | Jonathan Beck | 15 | -1724/+1838 | |
2009-10-28 | Unlink previous node in SetParent(). | Jonathan Beck | 1 | -0/+11 | |
2009-10-28 | Fix build for MSVC9. | Jonathan Beck | 12 | -9/+26 | |
2009-10-26 | Change name of input argument as 'in' is a reserved keyword in python. | Jonathan Beck | 1 | -4/+4 | |
2009-10-26 | Add Set/Get Parent and a helper to create a Node from a plist_t. | Jonathan Beck | 11 | -224/+88 | |
2009-10-18 | Tweak Dictioonary interface a bit. | Jonathan Beck | 1 | -1/+10 | |
2009-10-17 | Fixes for dates. | Jonathan Beck | 2 | -3/+4 | |
2009-10-17 | Implement Date object. | Jonathan Beck | 1 | -12/+15 | |
2009-10-17 | Install C++ binding. | Jonathan Beck | 1 | -1/+3 | |
2009-10-16 | Fix key valuation in dictionary loop. | Jonathan Beck | 1 | -1/+1 | |
2009-10-16 | Fix Node lifecycle and change argument as reference to const reference. | Jonathan Beck | 10 | -48/+134 | |
2009-10-15 | Fix various mistakes in C++ bindings. | Jonathan Beck | 8 | -6/+108 | |
2009-10-13 | Add C++ binding. | Jonathan Beck | 12 | -0/+1000 | |
2009-10-13 | Add path accessor util function. | Jonathan Beck | 1 | -25/+56 | |
2009-10-11 | Fix dict length. | Jonathan Beck | 1 | -1/+1 | |
2009-10-11 | Restore plist_dict_get_size function. | Jonathan Beck | 1 | -0/+9 | |
2009-10-11 | Add function to change a node's type. | Jonathan Beck | 1 | -3/+35 | |
2009-10-11 | Protect plist_free against NULL nodes. | Jonathan Beck | 1 | -2/+4 | |
2009-10-11 | Fix dict iteration. | Jonathan Beck | 1 | -5/+14 | |
2009-10-10 | Abstract iter base type. | Jonathan Beck | 1 | -5/+5 | |
2009-10-10 | Fix dict iteration. | Jonathan Beck | 1 | -1/+1 | |
2009-10-10 | Add dict iteration. Add functions to retrieve index and key from node. | Jonathan Beck | 1 | -5/+38 | |
2009-10-10 | Reverse argument for dicts to make it clearer. | Jonathan Beck | 1 | -6/+7 | |