summaryrefslogtreecommitdiff
path: root/lib/rubygems/custom_require.rb
diff options
context:
space:
mode:
authordrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-04-17 21:17:56 +0000
committerdrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-04-17 21:17:56 +0000
commit0ebe38eedd3b0b0771f57e1d4a85d472a1b6b64f (patch)
tree3fd875633a962ad584d787f536e5ced1697e058e /lib/rubygems/custom_require.rb
parent02dc9ae773d458be60f3fa656d5bb50f41a1c9e2 (diff)
Revert r35370 due to bad source branch
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35372 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/rubygems/custom_require.rb')
-rw-r--r--lib/rubygems/custom_require.rb5
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