diff options
Diffstat (limited to 'lib/rubygems/custom_require.rb')
-rw-r--r-- | lib/rubygems/custom_require.rb | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/lib/rubygems/custom_require.rb b/lib/rubygems/custom_require.rb index c813e3aaa2..641db842ac 100644 --- a/lib/rubygems/custom_require.rb +++ b/lib/rubygems/custom_require.rb @@ -32,7 +32,7 @@ module Kernel # that file has already been loaded is preserved. def require path - if Gem.unresolved_deps.empty? then + if Gem.unresolved_deps.empty? or Gem.loaded_path? path then gem_original_require path else spec = Gem::Specification.find { |s| @@ -55,8 +55,7 @@ module Kernel return gem_original_require path end rescue LoadError => load_error - if load_error.message.start_with?("Could not find") or - (load_error.message.end_with?(path) and Gem.try_activate(path)) then + if load_error.message.end_with?(path) and Gem.try_activate(path) then return gem_original_require(path) end |