60 |
60 |
61 // free the entire subtree |
61 // free the entire subtree |
62 CxTreeIterator iter = asc_scene_node_iterator(node, true); |
62 CxTreeIterator iter = asc_scene_node_iterator(node, true); |
63 cx_foreach(AscSceneNode*, child, iter) { |
63 cx_foreach(AscSceneNode*, child, iter) { |
64 if (!iter.exiting) continue; |
64 if (!iter.exiting) continue; |
65 if (child->behaviors != NULL) { |
65 cxListFree(child->behaviors); |
66 cxListFree(child->behaviors); |
|
67 } |
|
68 if (child->free_func != NULL) { |
66 if (child->free_func != NULL) { |
69 child->free_func(child); |
67 child->free_func(child); |
70 } else { |
68 } else { |
71 free(child); |
69 free(child); |
72 } |
70 } |