summaryrefslogtreecommitdiff
path: root/lib/rubygems/custom_require.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rubygems/custom_require.rb')
-rw-r--r--lib/rubygems/custom_require.rb5
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