aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2016-01-21 22:26:46 +0100
committerKim Alvefur <zash@zash.se>2016-01-21 22:26:46 +0100
commit463a20214229e415c776f19d853bd445b1e178a5 (patch)
treee490953514b654df57dd1a085fc6a2c22d786bac
parent990c17c4433e4ec453cd1060eb60bb07cd0cb4ea (diff)
downloadprosody-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.lua10
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;