net.dns, net.adns: Make sure errors from net.server are propagated (thanks asterix)
[prosody.git] / net / dns.lua
index 89b50255811b606af3ff2a53e0a91312bbe5e974..cdd949a22309fe2be2be70f64eee6e9ae3dc8622 100644 (file)
@@ -622,10 +622,10 @@ function resolver:getsocket(servernum)    -- - - - - - - - - - - - - getsocket
 
        local err;
        sock, err = socket.udp();
+       if sock and self.socket_wrapper then sock, err = self.socket_wrapper(sock, self); end
        if not sock then
                return nil, err;
        end
-       if self.socket_wrapper then sock = self.socket_wrapper(sock, self); end
        sock:settimeout(0);
        -- todo: attempt to use a random port, fallback to 0
        sock:setsockname('*', 0);