From: Matthew Wild Date: Mon, 16 Dec 2013 23:31:43 +0000 (+0000) Subject: net.server_select: Don't remove the socket from sendlist when we might have data... X-Git-Url: https://git.enpas.org/?a=commitdiff_plain;ds=sidebyside;h=57b56f5fc39375de80bcd9a4bb9fc16e5886bfb6;p=prosody.git 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) --- 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