net.server_event: Fix traceback if event re-added during starttls
authorKim Alvefur <zash@zash.se>
Tue, 19 Apr 2016 16:18:57 +0000 (18:18 +0200)
committerKim Alvefur <zash@zash.se>
Tue, 19 Apr 2016 16:18:57 +0000 (18:18 +0200)
net/server_event.lua

index 1c6f154789d88b08011543cbb9c99bbdf96b2cc9..9da2e910dde835ef9368c03ace522298c51f153f 100644 (file)
@@ -545,12 +545,11 @@ do
                                        elseif interface.startsslcallback then  -- start ssl connection if needed
                                                debug "starting ssl handshake after writing"
                                                interface.eventstarthandshake = addevent( base, nil, EV_TIMEOUT, interface.startsslcallback, 0 )
-                                       elseif interface.eventreadtimeout then
-                                               return EV_WRITE, EV_TIMEOUT
-                                       end
-                                       if interface.writebuffer ~= 0 then
+                                       elseif interface.writebuffer ~= 0 then
                                                -- data possibly written from ondrain
                                                return EV_WRITE, cfg.WRITE_TIMEOUT
+                                       elseif interface.eventreadtimeout then
+                                               return EV_WRITE, EV_TIMEOUT
                                        end
                                        interface.eventwrite = nil
                                        return -1