From 4421383e30b46241183d02db0ba5c4e4cc6d81e5 Mon Sep 17 00:00:00 2001 From: Michael Graff Date: Tue, 1 Aug 2000 13:53:38 +0000 Subject: [PATCH] only dereference l->keys if it isn't NULL --- lib/dns/config/confip.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/lib/dns/config/confip.c b/lib/dns/config/confip.c index bd07633927..09e0954525 100644 --- a/lib/dns/config/confip.c +++ b/lib/dns/config/confip.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: confip.c,v 1.32 2000/08/01 01:23:20 tale Exp $ */ +/* $Id: confip.c,v 1.33 2000/08/01 13:53:38 explorer Exp $ */ #include @@ -839,15 +839,18 @@ dns_c_iplist_detach(dns_c_iplist_t **list) { if (l->refcount == 0) { #ifndef NOMINUM_PUBLIC - for (i = 0 ; i < l->size ; i++) { - if (l->keys[i] != NULL) { - dns_name_free(l->keys[i], l->mem); - isc_mem_put(l->mem, l->keys[i], - sizeof (dns_name_t)); - l->keys[i] = NULL; + if (l->keys != NULL) { + for (i = 0 ; i < l->size ; i++) { + if (l->keys[i] != NULL) { + dns_name_free(l->keys[i], l->mem); + isc_mem_put(l->mem, l->keys[i], + sizeof (dns_name_t)); + l->keys[i] = NULL; + } } + isc_mem_put(l->mem, l->keys, + sizeof(dns_name_t *) * l->size); } - isc_mem_put(l->mem, l->keys, sizeof (dns_name_t *) * l->size); #endif /* NOMINUM_PUBLIC */ isc_mem_put(l->mem, l->ips, sizeof (isc_sockaddr_t) * l->size); isc_mem_put(l->mem, l, sizeof *l);