diff --git a/services/cache/rrset.c b/services/cache/rrset.c index 58f77922a..2c8552953 100644 --- a/services/cache/rrset.c +++ b/services/cache/rrset.c @@ -305,9 +305,10 @@ rrset_array_unlock_touch(struct rrset_cache* r, struct regional* scratch, hashvalue_t* h; size_t i; if(count > RR_COUNT_MAX || !(h = (hashvalue_t*)regional_alloc(scratch, - sizeof(hashvalue_t)*count))) + sizeof(hashvalue_t)*count))) { log_warn("rrset LRU: memory allocation failed"); - else /* store hash values */ + h = NULL; + } else /* store hash values */ for(i=0; ientry.hash; /* unlock */