aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorMatthew Wild <mwild1@gmail.com>2013-12-16 23:31:43 +0000
committerMatthew Wild <mwild1@gmail.com>2013-12-16 23:31:43 +0000
commitceba28fe83e3c5692701f22ce1ea4def69271f9e (patch)
tree00f37f6e7128e0cfa525566dc118d62f67fc38e6 /net
parent741e58831a2b846e42a5a9ca8722ae218c03aa56 (diff)
downloadprosody-ceba28fe83e3c5692701f22ce1ea4def69271f9e.tar.gz
prosody-ceba28fe83e3c5692701f22ce1ea4def69271f9e.zip
net.server_select: Don't remove the socket from sendlist when we might have data in the buffer (we'll now let sendbuffer() take care of that) (thanks daurnimator)
Diffstat (limited to 'net')
-rw-r--r--net/server_select.lua6
1 files changed, 1 insertions, 5 deletions
diff --git a/net/server_select.lua b/net/server_select.lua
index d0894715..22887265 100644
--- a/net/server_select.lua
+++ b/net/server_select.lua
@@ -916,13 +916,9 @@ local wrapclient = function( socket, ip, serverport, listeners, pattern, sslctx
-- When socket is writeable, call onconnect
local _sendbuffer = handler.sendbuffer;
handler.sendbuffer = function ()
- _sendlistlen = removesocket( _sendlist, socket, _sendlistlen );
handler.sendbuffer = _sendbuffer;
listeners.onconnect(handler);
- -- If there was data with the incoming packet, handle it now.
- if #handler:bufferqueue() > 0 then
- return _sendbuffer();
- end
+ return _sendbuffer(); -- Send any queued outgoing data
end
end
end