]> git.meshlink.io Git - meshlink/blobdiff - src/node.c
Fix a potential segfault when closing a meshlink handle.
[meshlink] / src / node.c
index dec86f885ea1b165619bab76cb17963a1ce4c356..4f4f599932caa1d6985afdc689b1a9d43b670310 100644 (file)
@@ -65,6 +65,8 @@ node_t *new_node(void) {
 void free_node(node_t *n) {
        n->status.destroyed = true;
 
+       utcp_exit(n->utcp);
+
        if(n->edge_tree) {
                free_edge_tree(n->edge_tree);
        }
@@ -80,8 +82,6 @@ void free_node(node_t *n) {
 
        free(n->name);
 
-       utcp_exit(n->utcp);
-
        free(n);
 }