net/server_epoll.lua
changeset 13445 6d96b6eeee5a
parent 13444 b27de3d2bad6
child 13451 5c9df28a57bb
--- a/net/server_epoll.lua	Sat Feb 24 00:20:35 2024 +0100
+++ b/net/server_epoll.lua	Sat Feb 24 01:00:44 2024 +0100
@@ -1147,12 +1147,13 @@
 local hook_signal;
 if have_signal and signal.signalfd then
 	local function dispatch(self)
-		return self:on("signal", signal.signalfd_read(self:getfd()));
+		return self:on("signal", self.conn:read());
 	end
 
 	function hook_signal(signum, cb)
 		local watch = watchfd(signal.signalfd(signum), dispatch);
 		watch.listeners = { onsignal = cb };
+		watch.close = nil; -- revert to default
 		return watch;
 	end
 end