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 | ecf5de4a4deb14356c5ceb45e963d2c7e0763b58 (patch) | |
tree | e490953514b654df57dd1a085fc6a2c22d786bac | |
parent | ffb24222c3a2a8371273b73dbc0654e9a9300c2b (diff) | |
download | prosody-ecf5de4a4deb14356c5ceb45e963d2c7e0763b58.tar.gz prosody-ecf5de4a4deb14356c5ceb45e963d2c7e0763b58.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; |