From 99e33affa47209fda58125a474e8617a2d981d7c Mon Sep 17 00:00:00 2001 From: Matthew Wild Date: Thu, 3 Dec 2009 02:28:34 +0000 Subject: net.server_select: Fix possibility of losing data sent from a socket just before it closes (thanks Sjoerd Simons) --- net/server_select.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/server_select.lua b/net/server_select.lua index ab2efcb0..566f5ae9 100644 --- a/net/server_select.lua +++ b/net/server_select.lua @@ -467,7 +467,7 @@ wrapconnection = function( server, listeners, socket, ip, serverport, clientport end local _readbuffer = function( ) -- this function reads data local buffer, err, part = receive( socket, pattern ) -- receive buffer with "pattern" - if not err or ( err == "timeout" or err == "wantread" ) then -- received something + if not err or string_len(part) > 0 then -- received something local buffer = buffer or part or "" local len = string_len( buffer ) if len > maxreadlen then -- cgit v1.2.3