chiark / gitweb /
resolved: properly handle adding empty replies to cache
authorLennart Poettering <lennart@poettering.net>
Wed, 30 Jul 2014 12:21:18 +0000 (14:21 +0200)
committerLennart Poettering <lennart@poettering.net>
Wed, 30 Jul 2014 12:21:18 +0000 (14:21 +0200)
src/resolve/resolved-dns-cache.c

index 28a375baed0ab284659eb154b54bc692cdd8ca19..7359dfa271973272637ca15f050b6e2538df090c 100644 (file)
@@ -352,12 +352,16 @@ int dns_cache_put(DnsCache *c, DnsQuestion *q, int rcode, DnsAnswer *answer, uns
         int r;
 
         assert(c);
-        assert(answer);
+        assert(q);
 
         /* First, delete all matching old RRs, so that we only keep
          * complete by_key in place. */
         for (i = 0; i < q->n_keys; i++)
                 dns_cache_remove(c, q->keys[i]);
+
+        if (!answer)
+                return 0;
+
         for (i = 0; i < answer->n_rrs; i++)
                 dns_cache_remove(c, answer->rrs[i]->key);