diff options
| author | 2009-10-10 23:09:29 +0200 | |
|---|---|---|
| committer | 2009-10-10 23:09:29 +0200 | |
| commit | f8ba9f02e363e01b34381d945987b6cbefecfe97 (patch) | |
| tree | e6223ce93d4c29611bf954cbb03a5f0a4eb3e2b8 /src/plist.c | |
| parent | 97f7caeecdfe233c30cec02ac1c4b5634a4f2bce (diff) | |
| download | libplist-f8ba9f02e363e01b34381d945987b6cbefecfe97.tar.gz libplist-f8ba9f02e363e01b34381d945987b6cbefecfe97.tar.bz2 | |
Abstract iter base type.
Diffstat (limited to 'src/plist.c')
| -rw-r--r-- | src/plist.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/plist.c b/src/plist.c index 116c7ec..b723517 100644 --- a/src/plist.c +++ b/src/plist.c | |||
| @@ -264,24 +264,24 @@ void plist_dict_new_iter(plist_t node, plist_dict_iter *iter) | |||
| 264 | { | 264 | { |
| 265 | if (iter && *iter == NULL) { | 265 | if (iter && *iter == NULL) { |
| 266 | *iter = malloc(sizeof(uint32_t)); | 266 | *iter = malloc(sizeof(uint32_t)); |
| 267 | **iter = 0; | 267 | *(uint32_t*)*iter = 0; |
| 268 | } | 268 | } |
| 269 | return; | 269 | return; |
| 270 | } | 270 | } |
| 271 | 271 | ||
| 272 | void plist_dict_next_item(plist_t node, plist_dict_iter iter, char **key, plist_t *val) | 272 | void plist_dict_next_item(plist_t node, plist_dict_iter iter, char **key, plist_t *val) |
| 273 | { | 273 | { |
| 274 | if (node && PLIST_DICT == plist_get_node_type(node) && *iter < g_node_n_children(node) / 2) { | 274 | if (node && PLIST_DICT == plist_get_node_type(node) && *(uint32_t*)iter < g_node_n_children(node) / 2) { |
| 275 | 275 | ||
| 276 | if (key) { | 276 | if (key) { |
| 277 | plist_get_key_val((plist_t)g_node_nth_child(node, 2 * (*iter)), key); | 277 | plist_get_key_val((plist_t)g_node_nth_child(node, 2 * (*(uint32_t*)iter)), key); |
| 278 | } | 278 | } |
| 279 | 279 | ||
| 280 | if (val) { | 280 | if (val) { |
| 281 | *val = (plist_t) g_node_nth_child(node, 2 * (*iter) + 1); | 281 | *val = (plist_t) g_node_nth_child(node, 2 * (*(uint32_t*)iter) + 1); |
| 282 | } | 282 | } |
| 283 | 283 | ||
| 284 | *iter += 2; | 284 | *(uint32_t*)iter += 2; |
| 285 | } | 285 | } |
| 286 | return; | 286 | return; |
| 287 | } | 287 | } |
