diff options
Diffstat (limited to 'lib/bundler/rubygems_ext.rb')
-rw-r--r-- | lib/bundler/rubygems_ext.rb | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/lib/bundler/rubygems_ext.rb b/lib/bundler/rubygems_ext.rb index f92cf5ce..27e9f2ab 100644 --- a/lib/bundler/rubygems_ext.rb +++ b/lib/bundler/rubygems_ext.rb @@ -141,6 +141,21 @@ module Gem alias eql? == end + + # fix bug in Rubygems < 1.4 by forcing calculation of @segments + if Gem::Version.new(Gem::VERSION) < Gem::Version.new("1.4.0") + class Version + def segments # :nodoc: + unless @segments_generated + @segments = @version.scan(/[0-9]+|[a-z]+/i).map do |s| + /^\\\\d+$/ =~ s ? s.to_i : s + end + end + @segments_generated = true + @segments + end + end + end end module Bundler |