| Age | Commit message (Collapse) | Author | Files | Lines | |
|---|---|---|---|---|---|
| 11 hours | Harden allocation failure handling and size arithmetic | 1 | -3/+21 | ||
| - check malloc/calloc/realloc results in constructors, the JSON and OpenStep writers, the XML text-part helpers and base64 decoding, and return PLIST_ERR_NO_MEM instead of asserting or dereferencing NULL - guard size calculations against overflow in the UTF-8/UTF-16BE conversions, ptrarray, and bytearray - make hash_table_insert() report failure instead of silently dropping the entry; writers propagate PLIST_ERR_NO_MEM, and dict lookup caches are discarded so lookups fall back to a linear search - don't overwrite an earlier parse error code in the XML parser, and report PLIST_ERR_NO_MEM when reading text content fails for lack of memory - OpenStep parser: check node/data/string allocations and dict/array insertion results Based on #323 by bg0d-droid. Co-authored-by: bg0d-droid <81825610+bg0d-droid@users.noreply.github.com> | |||||
| 2026-09-27 | ptrarray: Handle realloc() failure in ptr_array_insert() | 1 | -5/+10 | ||
| ptr_array_insert() assigned the result of realloc() directly to pa->pdata and bumped the capacity without checking for failure, so on out-of-memory the old buffer was leaked and the following store or memmove() wrote through a NULL pointer. Keep the old buffer on failure and return -1 from ptr_array_insert() and ptr_array_add(). The callers now handle the error: - the array lookup cache (plist.c) is dropped instead of silently going out of sync with the node list; lookups then fall back to walking the children, as they do before the cache exists - bplist parsing (used_indexes) and serialization (objects) return PLIST_ERR_NO_MEM; ignoring the error in parse_bin_node_at_index() would otherwise loop forever since the array never grows Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> | |||||
| 2023-05-21 | Add explicit casts and fix return type mismatches | 1 | -1/+1 | ||
| 2019-12-09 | ptrarray: Add function returning the size (number of elements) of the array | 1 | -1/+6 | ||
| 2019-05-19 | Add index lookup table for large PLIST_ARRAY nodes | 1 | -6/+36 | ||
| 2018-12-10 | ptrarray: Allow larger chunks for buffer reallocation | 1 | -1/+1 | ||
| 2014-05-20 | Rename "index" variable as it shadows global declaration on older systems | 1 | -3/+3 | ||
| 2011-05-27 | Make libplist glib free | 1 | -0/+61 | ||
