aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-12-23 06:47:44 +0000
committerdrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-12-23 06:47:44 +0000
commit1bd7257dc8884d7cdd80e2a2b551b9016c3b9ddd (patch)
tree09e85ca5ea3a6610c8c59e57b2c88913eed0d8ce
parent59641944e9902912fbbe81c57504f35d652b9ad6 (diff)
downloadruby-1bd7257dc8884d7cdd80e2a2b551b9016c3b9ddd.tar.gz
Match full RubyGems behavior when a gem can't be found
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20937 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog4
-rw-r--r--gem_prelude.rb9
2 files changed, 10 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 112c3f5c19..ff5d3eb392 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Tue Dec 23 15:46:47 2008 Eric Hodel <drbrain@segment7.net>
+ * gem_prelude.rb: Match full RubyGems behavior when a gem can't be
+ found.
+
Tue Dec 23 15:36:58 2008 Yuki Sonoda (Yugui) <yugui@yugui.jp>
* tool/file2lastrev.rb: detects vcs directory properly on building
diff --git a/gem_prelude.rb b/gem_prelude.rb
index becf626a80..553912c83d 100644
--- a/gem_prelude.rb
+++ b/gem_prelude.rb
@@ -18,6 +18,9 @@ if defined?(Gem) then
module Gem
+ class LoadError < ::LoadError
+ end
+
ConfigMap = {
:sitedir => RbConfig::CONFIG["sitedir"],
:ruby_version => RbConfig::CONFIG["ruby_version"],
@@ -183,13 +186,13 @@ if defined?(Gem) then
begin
require 'rubygems/defaults/operating_system'
- rescue LoadError
+ rescue ::LoadError
end
if defined?(RUBY_ENGINE) then
begin
require "rubygems/defaults/#{RUBY_ENGINE}"
- rescue LoadError
+ rescue ::LoadError
end
end
ensure
@@ -228,7 +231,7 @@ if defined?(Gem) then
def push_gem_version_on_load_path(gem_name, *version_requirements)
if version_requirements.empty?
unless GemPaths.has_key?(gem_name)
- raise LoadError.new("Could not find RubyGem #{gem_name} (>= 0)\n")
+ raise Gem::LoadError.new("Could not find RubyGem #{gem_name} (>= 0)\n")
end
# highest version gems already active