From f3dd8029e294e7a3af2646c558762ca368d1e1b9 Mon Sep 17 00:00:00 2001 From: Tiago Macedo Date: Tue, 1 Jul 2008 18:08:25 +0100 Subject: [PATCH] fixing rails detection of frozen gems --- railties/lib/rails/gem_dependency.rb | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-) diff --git a/railties/lib/rails/gem_dependency.rb b/railties/lib/rails/gem_dependency.rb index f8d9784..a1b6d52 100644 --- a/railties/lib/rails/gem_dependency.rb +++ b/railties/lib/rails/gem_dependency.rb @@ -24,7 +24,7 @@ module Rails end def unpacked_paths - Dir[File.join(self.class.unpacked_path, "#{@name}-#{@version || "*"}")] + Dir[File.join(self.class.unpacked_path, "#{find_frozen_gem || "#{@name}-#{@version || "*"}"}")] end def add_load_paths @@ -123,5 +123,11 @@ module Rails cmd << "--version" << %("#{@requirement.to_s}") if @requirement cmd end + + def find_frozen_gem + return nil if @requirement.nil? + a = Dir.entries(self.class.unpacked_path).select{|d| d.starts_with? @name and File.directory? File.join(self.class.unpacked_path, d) and @requirement.satisfied_by? Gem::Version.create(d.split('-').last)} + a.sort{|x,y| x.split('-').last <=> y.split('-').last}.last + end end end -- 1.5.6.1