diff --git a/src/libs/compat/freebsd_network/if.c b/src/libs/compat/freebsd_network/if.c index 257e44b8b8..fc418c6619 100644 --- a/src/libs/compat/freebsd_network/if.c +++ b/src/libs/compat/freebsd_network/if.c @@ -406,6 +406,12 @@ if_freemulti(struct ifmultiaddr *ifma) if (ifma->ifma_lladdr != NULL) free(ifma->ifma_lladdr); + + // Haiku note: We use a field in the ifmultiaddr struct (ifma_addr_storage) + // to store the address and let ifma_addr point to that. We therefore do not + // free it here, as it will be freed as part of freeing the if_multiaddr. + //free(ifma->ifma_addr); + free(ifma); }