aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
Diffstat (limited to 'Library')
-rw-r--r--Library/Homebrew/extend/ARGV.rb40
1 files changed, 19 insertions, 21 deletions
diff --git a/Library/Homebrew/extend/ARGV.rb b/Library/Homebrew/extend/ARGV.rb
index 7da130001..e3cb6da7a 100644
--- a/Library/Homebrew/extend/ARGV.rb
+++ b/Library/Homebrew/extend/ARGV.rb
@@ -26,29 +26,27 @@ module HomebrewArgvExtension
linked_keg_ref = HOMEBREW_REPOSITORY/"Library/LinkedKegs"/name
opt_prefix = HOMEBREW_PREFIX/"opt"/name
- if opt_prefix.symlink? && opt_prefix.directory?
- Keg.new(opt_prefix.resolved_path)
- elsif linked_keg_ref.symlink? && linked_keg_ref.directory?
- Keg.new(linked_keg_ref.resolved_path)
- elsif dirs.length == 1
- Keg.new(dirs.first)
- elsif (prefix = Formulary.factory(canonical_name).prefix).directory?
- Keg.new(prefix)
- else
- raise MultipleVersionsInstalledError.new(name)
+ begin
+ if opt_prefix.symlink? && opt_prefix.directory?
+ Keg.new(opt_prefix.resolved_path)
+ elsif linked_keg_ref.symlink? && linked_keg_ref.directory?
+ Keg.new(linked_keg_ref.resolved_path)
+ elsif dirs.length == 1
+ Keg.new(dirs.first)
+ elsif (prefix = Formulary.factory(canonical_name).prefix).directory?
+ Keg.new(prefix)
+ else
+ raise MultipleVersionsInstalledError.new(name)
+ end
+ rescue FormulaUnavailableError
+ raise <<-EOS.undent
+ Multiple kegs installed to #{rack}
+ However we don't know which one you refer to.
+ Please delete (with rm -rf!) all but one and then try again.
+ Sorry, we know this is lame.
+ EOS
end
end
- rescue FormulaUnavailableError
- if rack
- raise <<-EOS.undent
- Multiple kegs installed to #{rack}
- However we don't know which one you refer to.
- Please delete (with rm -rf!) all but one and then try again.
- Sorry, we know this is lame.
- EOS
- else
- raise
- end
end
# self documenting perhaps?