aboutsummaryrefslogtreecommitdiffstats
path: root/lib/bundler/rubygems_ext.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/bundler/rubygems_ext.rb')
-rw-r--r--lib/bundler/rubygems_ext.rb15
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