Free the entire notes data contained in the given tree */
| 328 | |
| 329 | /* Free the entire notes data contained in the given tree */ |
| 330 | static void note_tree_free(struct int_node *tree) |
| 331 | { |
| 332 | unsigned int i; |
| 333 | for (i = 0; i < 16; i++) { |
| 334 | void *p = tree->a[i]; |
| 335 | switch (GET_PTR_TYPE(p)) { |
| 336 | case PTR_TYPE_INTERNAL: |
| 337 | note_tree_free(CLR_PTR_TYPE(p)); |
| 338 | /* fall through */ |
| 339 | case PTR_TYPE_NOTE: |
| 340 | case PTR_TYPE_SUBTREE: |
| 341 | free(CLR_PTR_TYPE(p)); |
| 342 | } |
| 343 | } |
| 344 | } |
| 345 | |
| 346 | static int non_note_cmp(const struct non_note *a, const struct non_note *b) |
| 347 | { |