diff options
author | drbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-07-08 22:41:03 +0000 |
---|---|---|
committer | drbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-07-08 22:41:03 +0000 |
commit | 7083cebeaea83096128fc5ccb5f60bfbe5bcc939 (patch) | |
tree | fb25c12a6cc01a1a8de5221d64da632418e194a3 /lib/rubygems/core_ext | |
parent | fa343a796fd256fc9098db7fdddf226fe5cbd181 (diff) | |
download | ruby-7083cebeaea83096128fc5ccb5f60bfbe5bcc939.tar.gz |
* lib/rubygems: Update to RubyGems 2.0.4. See
https://github.com/rubygems/rubygems/blob/2.0/History.txt for changes
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41843 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/rubygems/core_ext')
-rwxr-xr-x | lib/rubygems/core_ext/kernel_require.rb | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/rubygems/core_ext/kernel_require.rb b/lib/rubygems/core_ext/kernel_require.rb index e6dfce644f..71062410cb 100755 --- a/lib/rubygems/core_ext/kernel_require.rb +++ b/lib/rubygems/core_ext/kernel_require.rb @@ -4,6 +4,8 @@ # See LICENSE.txt for permissions. #++ +require 'monitor' + module Kernel if defined?(gem_original_require) then @@ -31,7 +33,11 @@ module Kernel # The normal <tt>require</tt> functionality of returning false if # that file has already been loaded is preserved. + ACTIVATION_MONITOR = Monitor.new + def require path + ACTIVATION_MONITOR.enter + spec = Gem.find_unresolved_default_spec(path) if spec Gem.remove_unresolved_default_spec(spec) @@ -111,6 +117,8 @@ module Kernel end raise load_error + ensure + ACTIVATION_MONITOR.exit end private :require |