зеркало из https://github.com/github/ruby.git
[rubygems/rubygems] Refactor `Gem.load_path_insert_index`
https://github.com/rubygems/rubygems/commit/ae95885dff
This commit is contained in:
Родитель
a18e81d797
Коммит
5aa5aad48a
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
Загрузка…
Ссылка в новой задаче