# HG changeset patch # User Olaf Wintermann # Date 1632663838 -7200 # Node ID dcf01bb852f4a7eed4dc1c49905b1890127fa1c0 # Parent d4d643def2acff25c91d0b4da3609a35f24f8e56 implement cx_tree_add_child_node using cx_linked_list_add diff -r d4d643def2ac -r dcf01bb852f4 src/tree.c --- a/src/tree.c Sun Sep 26 15:43:41 2021 +0200 +++ b/src/tree.c Sun Sep 26 15:43:58 2021 +0200 @@ -27,6 +27,7 @@ */ #include "cx/tree.h" +#include "cx/linked_list.h" #define CX_TR_PTR(cur, off) ((void**)(((char*)cur)+off)) @@ -66,5 +67,12 @@ void **children_end, void *new_node) { - return 1; + if(cx_linked_list_add(children_begin, children_end, loc_prev, loc_next, new_node)) { + return 1; + } + // optional field + if(loc_parent >= 0) { + *CX_TR_PTR(new_node, loc_parent) = parent; + } + return 0; }