Commit 2e67a01b authored by Nikias Bassen's avatar Nikias Bassen

xplist: Assert when number of child nodes of PLIST_DICT is not even

This should only happen due to misuse of the library, e.g. when
calling plist_free() on a node that is a value node in a PLIST_DICT
without properly removing the dictionary entry (key/value pair) and
then calling plist_to_xml() on that dictionary.
parent db68a9d1
......@@ -353,6 +353,9 @@ static void node_to_xml(node_t* node, bytearray_t **outbuf, uint32_t depth)
str_buf_append(*outbuf, "\n", 1);
if (isStruct) {
if (node_data->type == PLIST_DICT) {
assert((node->children->count % 2) == 0);
}
node_iterator_t *ni = node_iterator_create(node->children);
node_t *ch;
while ((ch = node_iterator_next(ni))) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment