aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--net/server_epoll.lua6
1 files changed, 6 insertions, 0 deletions
diff --git a/net/server_epoll.lua b/net/server_epoll.lua
index ab513e93..62db6c86 100644
--- a/net/server_epoll.lua
+++ b/net/server_epoll.lua
@@ -668,6 +668,9 @@ function interface:setlimit(Bps)
end
function interface:pause_writes()
+ if self._write_lock then
+ return
+ end
self:debug("Pause writes");
self._write_lock = true;
self:setwritetimeout(false);
@@ -675,6 +678,9 @@ function interface:pause_writes()
end
function interface:resume_writes()
+ if not self._write_lock then
+ return
+ end
self:debug("Resume writes");
self._write_lock = nil;
if self.writebuffer[1] then