diff --git a/lib/node.c b/lib/node.c index fb600fa78..9b06c076d 100644 --- a/lib/node.c +++ b/lib/node.c @@ -157,7 +157,6 @@ int node_destroy(struct node *n) free(n->_vd); free(n->_name); - free(n); return 0; } diff --git a/lib/path.c b/lib/path.c index a4797d404..a167f41a7 100644 --- a/lib/path.c +++ b/lib/path.c @@ -208,8 +208,11 @@ int path_destroy(struct path *p) path_source_destroy(p->source); - free(p->_name); - free(p->source); + if (p->_name) + free(p->_name); + + if (p->source) + free(p->source); p->state = PATH_DESTROYED;