diff --git a/babeld/babel_interface.c b/babeld/babel_interface.c index 2cf670712315..854c73acc67f 100644 --- a/babeld/babel_interface.c +++ b/babeld/babel_interface.c @@ -695,8 +695,10 @@ interface_reset(struct interface *ifp) babel_ifp->cost, babel_ifp->ipv4 ? ", IPv4" : ""); - if (babel_ifp->ipv4 != NULL) + if (babel_ifp->ipv4 != NULL){ free(babel_ifp->ipv4); + babel_ifp->ipv4 = NULL; + } return 1; } @@ -1348,5 +1350,9 @@ babel_interface_allocate (void) static void babel_interface_free (babel_interface_nfo *babel_ifp) { + if (babel_ifp->ipv4){ + free(babel_ifp->ipv4); + babel_ifp->ipv4 = NULL; + } XFREE(MTYPE_BABEL_IF, babel_ifp); }