0
0
Fork 0

Do now swallow response body on persistent connection (#32729)

This commit is contained in:
Christian Schmidt 2025-01-09 09:35:35 +01:00 committed by GitHub
parent 4e2c15b45d
commit 8e2c642d44
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 46 additions and 13 deletions

View file

@ -111,16 +111,10 @@ class Request
end
begin
# If we are using a persistent connection, we have to
# read every response to be able to move forward at all.
# However, simply calling #to_s or #flush may not be safe,
# as the response body, if malicious, could be too big
# for our memory. So we use the #body_with_limit method
response.body_with_limit if http_client.persistent?
yield response if block_given?
ensure
http_client.close unless http_client.persistent?
response.truncated_body if http_client.persistent? && !response.connection.finished_request?
http_client.close unless http_client.persistent? && response.connection.finished_request?
end
end