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