diff --git a/lib/isc/radix.c b/lib/isc/radix.c index d84e5d0302..54c03832f1 100644 --- a/lib/isc/radix.c +++ b/lib/isc/radix.c @@ -694,13 +694,13 @@ isc_radix_remove(isc_radix_tree_t *radix, isc_radix_node_t *node) { return; } - isc_mem_put(radix->mctx, node, sizeof(*node)); - radix->num_active_node--; - if (parent->r == node) { parent->r = child; } else { INSIST(parent->l == node); parent->l = child; } + + isc_mem_put(radix->mctx, node, sizeof(*node)); + radix->num_active_node--; }