rubygems.rb: use @gem_prelude_index

* lib/rubygems.rb (Gem.load_path_insert_index): search
  @gem_prelude_index first.
* lib/rubygems/test_case.rb (Gem::TestCase#setup): keep already
  expanded paths to prserve instance variables.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51104 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2015-07-02 05:15:53 +00:00
Родитель aae22e3408
Коммит a499d1e698
3 изменённых файлов: 15 добавлений и 1 удалений

Просмотреть файл

@ -1,3 +1,11 @@
Thu Jul 2 14:15:50 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/rubygems.rb (Gem.load_path_insert_index): search
@gem_prelude_index first.
* lib/rubygems/test_case.rb (Gem::TestCase#setup): keep already
expanded paths to prserve instance variables.
Thu Jul 2 14:12:01 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ruby.c (process_options): also copy initial load path marks at

Просмотреть файл

@ -577,6 +577,10 @@ module Gem
# gem's paths are inserted before site lib directory by default.
def self.load_path_insert_index
$LOAD_PATH.each_with_index do |path, i|
return i if path.instance_variable_defined?(:@gem_prelude_index)
end
index = $LOAD_PATH.index RbConfig::CONFIG['sitelibdir']
index

Просмотреть файл

@ -269,7 +269,9 @@ class Gem::TestCase < MiniTest::Unit::TestCase
Gem.ensure_gem_subdirectories @gemhome
@orig_LOAD_PATH = $LOAD_PATH.dup
$LOAD_PATH.map! { |s| File.expand_path(s).untaint }
$LOAD_PATH.map! { |s|
(expand_path = File.expand_path(s)) == s ? s : expand_path.untaint
}
Dir.chdir @tempdir