- return node->children[i];
-}
-
-int ec_node_add_child(struct ec_node *node, struct ec_node *child)
-{
- struct ec_node **children = NULL;
- size_t n;
-
- if (node == NULL || child == NULL) {
- errno = EINVAL;
- goto fail;
- }
-
- n = node->n_children;
- children = ec_realloc(node->children,
- (n + 1) * sizeof(child));
- if (children == NULL)
- goto fail;
-
- children[n] = child;
- node->children = children;
- node->n_children = n + 1;
-
- return 0;
-
-fail:
- ec_free(children);
- assert(errno != 0);
- return -1;