aboutsummaryrefslogtreecommitdiffstats
path: root/net/server_event.lua
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2016-04-19 17:30:30 +0200
committerKim Alvefur <zash@zash.se>2016-04-19 17:30:30 +0200
commitee3e8bbd38974e1c5c788b06e9002af7eb02fed3 (patch)
tree3edde11b7c7da47a785d5aeb95b6b3510baf56d2 /net/server_event.lua
parentacd12fcc61d2e0a23db0b938fbb0ed0215f86c11 (diff)
parent2bf3239f769a9ea49d8aa7cfaa62bc034ddc4773 (diff)
downloadprosody-ee3e8bbd38974e1c5c788b06e9002af7eb02fed3.tar.gz
prosody-ee3e8bbd38974e1c5c788b06e9002af7eb02fed3.zip
Merge 0.9->0.10
Diffstat (limited to 'net/server_event.lua')
-rw-r--r--net/server_event.lua4
1 files changed, 4 insertions, 0 deletions
diff --git a/net/server_event.lua b/net/server_event.lua
index 2edc9a0c..a67d5afb 100644
--- a/net/server_event.lua
+++ b/net/server_event.lua
@@ -521,6 +521,10 @@ local function handleclient( client, ip, port, server, pattern, listener, sslctx
elseif interface.eventreadtimeout then
return EV_WRITE, EV_TIMEOUT
end
+ if interface.writebuffer ~= 0 then
+ -- data possibly written from ondrain
+ return EV_WRITE, cfg.WRITE_TIMEOUT
+ end
interface.eventwrite = nil
return -1
elseif byte and (err == "timeout" or err == "wantwrite") then -- want write again