net/server_epoll.lua
changeset 7596 0266434d7df1
parent 7595 10d2f008321d
child 7597 5e884501a9ac
--- a/net/server_epoll.lua	Thu Aug 18 16:33:12 2016 +0200
+++ b/net/server_epoll.lua	Thu Aug 18 16:41:22 2016 +0200
@@ -334,10 +334,13 @@
 
 function interface:close()
 	if self._wantwrite then
+		self:setflags(false, true); -- Flush final buffer contents
+		self.write, self.send = noop, noop; -- No more writing
 		log("debug", "Close %s after writing", tostring(self));
 		self._toclose = true;
 	else
 		log("debug", "Close %s now", tostring(self));
+		self.write, self.send = noop, noop;
 		self.close = noop;
 		self:on("disconnect");
 		self:destroy();