diff --git a/ares_free_hostent.c b/ares_free_hostent.c index d6cf51f4..d7667956 100644 --- a/ares_free_hostent.c +++ b/ares_free_hostent.c @@ -33,10 +33,8 @@ void ares_free_hostent(struct hostent *host) for (p = host->h_aliases; *p; p++) free(*p); free(host->h_aliases); - for(p = host->h_addr_list; *p; p++) - { - free(*p); - } + free(host->h_addr_list[0]); /* no matter if there is one or many entries, + there is only one malloc for all of them */ free(host->h_addr_list); free(host); }