diff options
author | Kim Alvefur <zash@zash.se> | 2016-01-21 22:26:46 +0100 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2016-01-21 22:26:46 +0100 |
commit | 463a20214229e415c776f19d853bd445b1e178a5 (patch) | |
tree | e490953514b654df57dd1a085fc6a2c22d786bac | |
parent | 990c17c4433e4ec453cd1060eb60bb07cd0cb4ea (diff) | |
download | prosody-463a20214229e415c776f19d853bd445b1e178a5.tar.gz prosody-463a20214229e415c776f19d853bd445b1e178a5.zip |
net.dns: Remember query only after it was sent, in case it was not (fixes #598)
-rw-r--r-- | net/dns.lua | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/net/dns.lua b/net/dns.lua index f56157d0..d123731c 100644 --- a/net/dns.lua +++ b/net/dns.lua @@ -763,16 +763,16 @@ function resolver:query(qname, qtype, qclass) -- - - - - - - - - - -- query self.active[id] = self.active[id] or {}; self.active[id][question] = o; - -- remember which coroutine wants the answer - if co then - set(self.wanted, qclass, qtype, qname, co, true); - end - local conn, err = self:getsocket(o.server) if not conn then return nil, err; end conn:send (o.packet) + + -- remember which coroutine wants the answer + if co then + set(self.wanted, qclass, qtype, qname, co, true); + end if timer and self.timeout then local num_servers = #self.server; |