diff options
| author | Max Howell | 2012-03-07 11:10:16 +0000 |
|---|---|---|
| committer | Max Howell | 2012-03-07 12:33:47 +0000 |
| commit | 1e4c65be0b160a93ffc027fa2384f07f51056878 (patch) | |
| tree | aec1fce736970809d7be4a0e399f9d507c148820 | |
| parent | 7034ce6e067360f368f46917408cb4a442fe1836 (diff) | |
| download | homebrew-1e4c65be0b160a93ffc027fa2384f07f51056878.tar.bz2 | |
If multiple kegs, default to formula keg
If it exists, ARGV.kegs will return the Formula.prefix keg for each rack examined.
So for ARGV=[wget, foo] and the following Cellar (wget/1.11, wget/1.12, foo/1.0) you'll get [wget/1.12, foo/1.0] from ARGV.kegs provided 1.12 is the formula version of wget.
| -rw-r--r-- | Library/Homebrew/extend/ARGV.rb | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/Library/Homebrew/extend/ARGV.rb b/Library/Homebrew/extend/ARGV.rb index 130058327..59a5087e7 100644 --- a/Library/Homebrew/extend/ARGV.rb +++ b/Library/Homebrew/extend/ARGV.rb @@ -31,8 +31,16 @@ module HomebrewArgvExtension linked_keg_ref = HOMEBREW_REPOSITORY/"Library/LinkedKegs"/name if not linked_keg_ref.symlink? - raise MultipleVersionsInstalledError.new(name) if dirs.length > 1 - Keg.new(dirs.first) + if dirs.length == 1 + Keg.new(dirs.first) + else + prefix = Formula.factory(canonical_name).prefix + if prefix.directory? + Keg.new(prefix) + else + raise MultipleVersionsInstalledError.new(name) + end + end else Keg.new(linked_keg_ref.realpath) end |
