summaryrefslogtreecommitdiff
path: root/ares_free_hostent.c
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2007-06-04 21:04:14 +0000
committerDaniel Stenberg <daniel@haxx.se>2007-06-04 21:04:14 +0000
commit3ea04a6435f25c7916e22fa510fd67b5eb30c86c (patch)
tree89dbc1a1a632a1b2de345095b76f7f4b7553da5d /ares_free_hostent.c
parentfc5a460e0ead6c0165bb714319357b09a0395b16 (diff)
downloadc-ares-3ea04a6435f25c7916e22fa510fd67b5eb30c86c.tar.gz
c-ares-3ea04a6435f25c7916e22fa510fd67b5eb30c86c.tar.bz2
c-ares-3ea04a6435f25c7916e22fa510fd67b5eb30c86c.zip
fix the bad bad bad mess this caused on name resolves returning more than
one name... Reported by James Bursa
Diffstat (limited to 'ares_free_hostent.c')
-rw-r--r--ares_free_hostent.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/ares_free_hostent.c b/ares_free_hostent.c
index d6cf51f..d766795 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);
}