diff options
Diffstat (limited to 'Library/Homebrew/cmd')
| -rw-r--r-- | Library/Homebrew/cmd/pin.rb | 14 | ||||
| -rw-r--r-- | Library/Homebrew/cmd/unpin.rb | 14 |
2 files changed, 18 insertions, 10 deletions
diff --git a/Library/Homebrew/cmd/pin.rb b/Library/Homebrew/cmd/pin.rb index 26b487a0d..2c0d5d33d 100644 --- a/Library/Homebrew/cmd/pin.rb +++ b/Library/Homebrew/cmd/pin.rb @@ -6,11 +6,15 @@ module Homebrew extend self abort "Cowardly refusing to `sudo pin'" end raise FormulaUnspecifiedError if ARGV.named.empty? - ARGV.formulae.each do |fmla| - f = Formula.factory(fmla.to_s) - onoe "Cannot pin uninstalled formula #{f.name}!" unless f.pinable? - opoo "Formula #{f.name} already pinned!" if f.pinable? and f.pinned? - f.pin if f.pinable? and not f.pinned? + + ARGV.formulae.each do |f| + if f.pinned? + opoo "#{f.name} already pinned" + elsif !f.pinnable? + onoe "#{f.name} not installed" + else + f.pin + end end end end diff --git a/Library/Homebrew/cmd/unpin.rb b/Library/Homebrew/cmd/unpin.rb index 6855db4bf..265f7a941 100644 --- a/Library/Homebrew/cmd/unpin.rb +++ b/Library/Homebrew/cmd/unpin.rb @@ -6,11 +6,15 @@ module Homebrew extend self abort "Cowardly refusing to `sudo unpin'" end raise FormulaUnspecifiedError if ARGV.named.empty? - ARGV.formulae.each do |fmla| - f = Formula.factory(fmla.to_s) - onoe "Cannot unpin uninstalled formula #{f.name}!" unless f.pinable? - opoo "Formula #{f.name} already unpinned!" if f.pinable? and not f.pinned? - f.unpin if f.pinable? and f.pinned? + + ARGV.formulae.each do |f| + if f.pinned? + f.unpin + elsif !f.pinnable? + onoe "#{f.name} not installed" + else + opoo "#{f.name} not pinned" + end end end end |
