diff options
| author | Max Howell | 2012-03-07 11:10:16 +0000 |
|---|---|---|
| committer | Max Howell | 2012-03-07 12:33:47 +0000 |
| commit | 735b6337a120b54bf1fcad5131bfdab951dc34f8 (patch) | |
| tree | 595f7f2642f45761229844266d1bb89c9010acea /Library | |
| parent | 67c3f1b2b4e4697af93a3e78e31fd00df2d02966 (diff) | |
| download | brew-735b6337a120b54bf1fcad5131bfdab951dc34f8.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.
Diffstat (limited to 'Library')
| -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 |
