X-Git-Url: http://git.videolan.org/gitweb.cgi/vlc.git/?p=vlc.git;p=vlc.git;a=blobdiff_plain;f=compat%2Ffreeaddrinfo.c;h=fecc3fa7dde3cef3c769afdc710c7156714f759b;hp=0d5a1d8cdba36ae4e2f4966a136fac90b4a5f78c;hb=4716a65fc63c00a3970f65848ce3d94809d22ef0;hpb=3180272a56bdb3933219e1cc2c57d0285a7adbd3 diff --git a/compat/freeaddrinfo.c b/compat/freeaddrinfo.c index 0d5a1d8cdb..fecc3fa7dd 100644 --- a/compat/freeaddrinfo.c +++ b/compat/freeaddrinfo.c @@ -34,12 +34,13 @@ */ void freeaddrinfo (struct addrinfo *res) { - if (res == NULL) - return; + while (res != NULL) + { + struct addrinfo *next = res->ai_next; - freeaddrinfo (res->ai_next); - - free (res->ai_canonname); - free (res->ai_addr); - free (res); + free (res->ai_canonname); + free (res->ai_addr); + free (res); + res = next; + } }