From 20903530c9bd3bcdbb512de6a4e4db7391c60674 Mon Sep 17 00:00:00 2001 From: Oskar Eichler <62393985+OskarEichler@users.noreply.github.com> Date: Sun, 30 Aug 2026 15:10:43 +0700 Subject: [PATCH] Propagate response inflater finish errors --- lib/net/http/response.rb | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/lib/net/http/response.rb b/lib/net/http/response.rb index fb48490..038d821 100644 --- a/lib/net/http/response.rb +++ b/lib/net/http/response.rb @@ -611,22 +611,21 @@ def read_body_0(dest) inflater do |inflate_body_io| if chunked? read_chunked dest, inflate_body_io - return - end - - @socket = inflate_body_io + else + @socket = inflate_body_io - clen = content_length() - if clen - @socket.read clen, dest, @ignore_eof - return - end - clen = range_length() - if clen - @socket.read clen, dest - return + clen = content_length() + if clen + @socket.read clen, dest, @ignore_eof + else + clen = range_length() + if clen + @socket.read clen, dest + else + @socket.read_all dest + end + end end - @socket.read_all dest end end