server_select: fix onreadtimeout support so that listeners can override the default (disconnect) behaviour
authorMatthew Wild <mwild1@gmail.com>
Sat, 28 Sep 2013 18:40:48 +0100
changeset 5846 b8c7656481ac
parent 5845 c48f717c2fd6
child 5847 6aaa7ad4463c
server_select: fix onreadtimeout support so that listeners can override the default (disconnect) behaviour
net/server_select.lua
--- a/net/server_select.lua	Thu Sep 26 16:55:39 2013 +0200
+++ b/net/server_select.lua	Sat Sep 28 18:40:48 2013 +0100
@@ -284,6 +284,7 @@
 	local status = listeners.onstatus
 	local disconnect = listeners.ondisconnect
 	local drain = listeners.ondrain
+	local onreadtimeout = listeners.onreadtimeout;
 
 	local bufferqueue = { } -- buffer array
 	local bufferqueuelen = 0	-- end of buffer array
@@ -312,11 +313,14 @@
 	handler.disconnect = function( )
 		return disconnect
 	end
+	handler.onreadtimeout = onreadtimeout;
+
 	handler.setlistener = function( self, listeners )
 		dispatch = listeners.onincoming
 		disconnect = listeners.ondisconnect
 		status = listeners.onstatus
 		drain = listeners.ondrain
+		handler.onreadtimeout = listeners.onreadtimeout
 	end
 	handler.getstats = function( )
 		return readtraffic, sendtraffic