1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

merges r23208 from trunk into ruby_1_9_1.

--
* gem_prelude.rb (Gem::QuickLoader#push_gem_version_on_load_path):
  check for requirement if the gem is installed.  a patch from
  Kyosuke MOROHASHI at [ruby-dev:38020].

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@23340 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
yugui 2009-05-04 12:31:06 +00:00
parent 974d1ae287
commit 184abbe8a3
2 changed files with 17 additions and 9 deletions

View file

@ -1,3 +1,9 @@
Sun Apr 19 13:17:25 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* gem_prelude.rb (Gem::QuickLoader#push_gem_version_on_load_path):
check for requirement if the gem is installed. a patch from
Kyosuke MOROHASHI at [ruby-dev:38020].
Wed Apr 15 20:24:49 2009 Yusuke Endoh <mame@tsg.ne.jp>
* array.c (rb_ary_flatten): flatten(0) works as Array#dup.

View file

@ -245,15 +245,17 @@ if defined?(Gem) then
requirement, version = version_requirements[0].split
requirement.strip!
if requirement == ">" || requirement == ">="
if (GemVersions[gem_name] <=> Gem.calculate_integers_for_gem_version(version)) >= 0
return false
end
elsif requirement == "~>"
loaded_version = GemVersions[gem_name]
required_version = Gem.calculate_integers_for_gem_version(version)
if loaded_version && (loaded_version[0] == required_version[0])
return false
if loaded_version = GemVersions[gem_name]
case requirement
when ">", ">="
if (loaded_version <=> Gem.calculate_integers_for_gem_version(version)) >= 0
return false
end
when "~>"
required_version = Gem.calculate_integers_for_gem_version(version)
if (loaded_version[0] == required_version[0])
return false
end
end
end