diff options
| author | Jack Nagel | 2014-03-15 12:55:14 -0500 |
|---|---|---|
| committer | Jack Nagel | 2014-03-15 12:55:14 -0500 |
| commit | e236901e56addff6c887db15c7db47360e463359 (patch) | |
| tree | cd10cc8083dd246b423a6d0f9c35500ebaa9c4e7 /Library | |
| parent | eab90dcb567c552dbd1965383b2cd10035f7debd (diff) | |
| download | brew-e236901e56addff6c887db15c7db47360e463359.tar.bz2 | |
Use canonicalized name in NoSuchKegError message
cf. Homebrew/homebrew#22778.
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/extend/ARGV.rb | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/Library/Homebrew/extend/ARGV.rb b/Library/Homebrew/extend/ARGV.rb index 73d6a414f..911d49f6b 100644 --- a/Library/Homebrew/extend/ARGV.rb +++ b/Library/Homebrew/extend/ARGV.rb @@ -19,15 +19,17 @@ module HomebrewArgvExtension require 'formula' @kegs ||= downcased_unique_named.collect do |name| canonical_name = Formula.canonical_name(name) - rack = HOMEBREW_CELLAR + if canonical_name.include? "/" + + if canonical_name.include? "/" # canonical_name returns a path if it was a formula installed via a # URL. And we only want the name. FIXME that function is insane. - Pathname.new(canonical_name).stem + rack = HOMEBREW_CELLAR/Pathname.new(canonical_name).stem else - canonical_name + rack = HOMEBREW_CELLAR/canonical_name end - dirs = rack.children.select{ |pn| pn.directory? } rescue [] - raise NoSuchKegError.new(name) if not rack.directory? or dirs.length == 0 + + dirs = rack.directory? ? rack.subdirs : [] + raise NoSuchKegError.new(rack.basename.to_s) if not rack.directory? or dirs.empty? linked_keg_ref = HOMEBREW_REPOSITORY/"Library/LinkedKegs"/name |
