summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorDavid Rodríguez <deivid.rodriguez@riseup.net>2020-05-19 14:08:19 +0200
committerHiroshi SHIBATA <hsbt@ruby-lang.org>2020-06-05 07:32:42 +0900
commit5aa5aad48aa3effce60de3559d9bd107bfc9a91d (patch)
tree396d3dc4d6a78dccbae9f3fc7af8427ea8231f55 /lib
parenta18e81d797135de6e143a600e4f4d2b00ab23bf9 (diff)
[rubygems/rubygems] Refactor `Gem.load_path_insert_index`
https://github.com/rubygems/rubygems/commit/ae95885dff
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/3184
Diffstat (limited to 'lib')
-rw-r--r--lib/rubygems.rb13
-rw-r--r--lib/rubygems/core_ext/kernel_require.rb5
2 files changed, 4 insertions, 14 deletions
diff --git a/lib/rubygems.rb b/lib/rubygems.rb
index 9bf1c63..b03d747 100644
--- a/lib/rubygems.rb
+++ b/lib/rubygems.rb
@@ -590,7 +590,7 @@ An Array (#{env.inspect}) was passed in from #{caller[3]}
index = $LOAD_PATH.index RbConfig::CONFIG['sitelibdir']
- index
+ index || 0
end
##
@@ -607,15 +607,8 @@ An Array (#{env.inspect}) was passed in from #{caller[3]}
def self.add_to_load_path(*paths)
@activated_gem_paths = activated_gem_paths + paths.size
- insert_index = load_path_insert_index
-
- if insert_index
- # gem directories must come after -I and ENV['RUBYLIB']
- $LOAD_PATH.insert(insert_index, *paths)
- else
- # we are probably testing in core, -I and RUBYLIB don't apply
- $LOAD_PATH.unshift(*paths)
- end
+ # gem directories must come after -I and ENV['RUBYLIB']
+ $LOAD_PATH.insert(Gem.load_path_insert_index, *paths)
end
@yaml_loaded = false
diff --git a/lib/rubygems/core_ext/kernel_require.rb b/lib/rubygems/core_ext/kernel_require.rb
index 7625ce1..decf482 100644
--- a/lib/rubygems/core_ext/kernel_require.rb
+++ b/lib/rubygems/core_ext/kernel_require.rb
@@ -44,10 +44,7 @@ module Kernel
resolved_path = begin
rp = nil
Gem.suffixes.each do |s|
- load_path_insert_index = Gem.load_path_insert_index
- break unless load_path_insert_index
-
- $LOAD_PATH[0...load_path_insert_index - Gem.activated_gem_paths].each do |lp|
+ $LOAD_PATH[0...Gem.load_path_insert_index - Gem.activated_gem_paths].each do |lp|
safe_lp = lp.dup.tap(&Gem::UNTAINT)
begin
if File.symlink? safe_lp # for backward compatibility