# HG changeset patch # User Matthew Wild # Date 1313871247 14400 # Node ID f600591c87fa22c185bc89c193930016ccd3dfa0 # Parent 912a49b1c4e30e308a37b4e0b5877760c11ab4fd net.server_select: Remove socket from sendlist before calling listener callbacks (thanks darkrain) diff -r 912a49b1c4e3 -r f600591c87fa net/server_select.lua --- a/net/server_select.lua Sat Aug 20 15:10:04 2011 -0400 +++ b/net/server_select.lua Sat Aug 20 16:14:07 2011 -0400 @@ -848,13 +848,13 @@ -- 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 - _sendlistlen = removesocket( _sendlist, socket, _sendlistlen ) end end end