# HG changeset patch # User Kim Alvefur # Date 1537964759 -7200 # Node ID 58fe099043ed46cbe8809b48919c61b71ad2ee91 # Parent 5c8006ce8cb8ac86064d11972d68baea9d9cc137 net.server: Call a 'onattach' callback when replacing listeners diff -r 5c8006ce8cb8 -r 58fe099043ed net/server_epoll.lua --- a/net/server_epoll.lua Wed Sep 26 14:57:09 2018 +0200 +++ b/net/server_epoll.lua Wed Sep 26 14:25:59 2018 +0200 @@ -139,6 +139,7 @@ function interface:setlistener(listeners) self:on("detach"); self.listeners = listeners; + self:on("attach"); end -- Call a listener callback diff -r 5c8006ce8cb8 -r 58fe099043ed net/server_event.lua --- a/net/server_event.lua Wed Sep 26 14:57:09 2018 +0200 +++ b/net/server_event.lua Wed Sep 26 14:25:59 2018 +0200 @@ -424,7 +424,9 @@ self.onreadtimeout = listener.onreadtimeout; self.onstatus = listener.onstatus; self.ondetach = listener.ondetach; + self.onattach = listener.onattach; self.ondrain = listener.ondrain; + self:onattach(); end -- Stub handlers @@ -446,6 +448,8 @@ end function interface_mt:ondetach() end +function interface_mt:onattach() +end function interface_mt:onstatus() end diff -r 5c8006ce8cb8 -r 58fe099043ed net/server_select.lua --- a/net/server_select.lua Wed Sep 26 14:57:09 2018 +0200 +++ b/net/server_select.lua Wed Sep 26 14:25:59 2018 +0200 @@ -331,6 +331,9 @@ drain = listeners.ondrain handler.onreadtimeout = listeners.onreadtimeout detach = listeners.ondetach + if listeners.onattach then + listeners.onattach(self) + end end handler.getstats = function( ) return readtraffic, sendtraffic