passing EOF errors when IO is closed (which will be ignored if all requests have been served)

This commit is contained in:
HoneyryderChuck 2018-06-29 17:26:39 +01:00
parent 0284b0478e
commit aee3a6c5b1

View File

@ -154,7 +154,9 @@ module HTTPX
loop do
siz = @io.read(wsize, @read_buffer)
unless siz
emit(:close)
ex = EOFError.new("descriptor closed")
ex.set_backtrace(caller)
on_error(ex)
return
end
return if siz.zero?
@ -168,7 +170,9 @@ module HTTPX
return if @write_buffer.empty?
siz = @io.write(@write_buffer)
unless siz
emit(:close)
ex = EOFError.new("descriptor closed")
ex.set_backtrace(caller)
on_error(ex)
return
end
log { "WRITE: #{siz} bytes..." }