# HG changeset patch # User Kim Alvefur # Date 1528551303 -7200 # Node ID fcf42bd7d067c6dacddc5575a600f985fca323ce # Parent c72a6226ee31ffdee7b5a56c495ac6e51c2ee1e3 net.dns: Don't attempt to cache unparsed data (fixes #1056) rr[qtype:lower()] can be nil. I think this happens if the type does not have a parser. Also see #819 #976 diff -r c72a6226ee31 -r fcf42bd7d067 net/dns.lua --- a/net/dns.lua Sat Jun 09 00:09:25 2018 +0200 +++ b/net/dns.lua Sat Jun 09 15:35:03 2018 +0200 @@ -672,7 +672,7 @@ self.cache = self.cache or setmetatable({}, cache_metatable); local rrs = get(self.cache, qclass, type, qname) or set(self.cache, qclass, type, qname, setmetatable({}, rrs_metatable)); - if not rrs[rr[qtype:lower()]] then + if rr[qtype:lower()] and not rrs[rr[qtype:lower()]] then rrs[rr[qtype:lower()]] = true; append(rrs, rr); end