summaryrefslogtreecommitdiff
path: root/lib/rubygems/request.rb
diff options
context:
space:
mode:
authorHiroshi SHIBATA <[email protected]>2023-12-22 07:01:12 +0900
committerHiroshi SHIBATA <[email protected]>2023-12-22 07:24:04 +0900
commit82496f2b389278a569fa7680ee6faa55a97410d7 (patch)
treeacce0c98431a9f617be3d5c971b4c684155c5b94 /lib/rubygems/request.rb
parentfc549b2b3a65a95a734ee8679293a30284f84622 (diff)
Merge RubyGems-3.5.2 and Bundler-2.5.2
Diffstat (limited to 'lib/rubygems/request.rb')
-rw-r--r--lib/rubygems/request.rb8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/rubygems/request.rb b/lib/rubygems/request.rb
index dec0c35c63..8702e223d6 100644
--- a/lib/rubygems/request.rb
+++ b/lib/rubygems/request.rb
@@ -30,7 +30,7 @@ class Gem::Request
@uri = uri
@request_class = request_class
@last_modified = last_modified
- @requests = Hash.new 0
+ @requests = Hash.new(0).compare_by_identity
@user_agent = user_agent
@connection_pool = pool
@@ -196,7 +196,7 @@ class Gem::Request
bad_response = false
begin
- @requests[connection.object_id] += 1
+ @requests[connection] += 1
verbose "#{request.method} #{Gem::Uri.redact(@uri)}"
@@ -247,7 +247,7 @@ class Gem::Request
rescue EOFError, Gem::Timeout::Error,
Errno::ECONNABORTED, Errno::ECONNRESET, Errno::EPIPE
- requests = @requests[connection.object_id]
+ requests = @requests[connection]
verbose "connection reset after #{requests} requests, retrying"
raise Gem::RemoteFetcher::FetchError.new("too many connection resets", @uri) if retried
@@ -267,7 +267,7 @@ class Gem::Request
# Resets HTTP connection +connection+.
def reset(connection)
- @requests.delete connection.object_id
+ @requests.delete connection
connection.finish
connection.start