diff options
| author | Jack Nagel | 2013-05-15 22:13:56 -0500 |
|---|---|---|
| committer | Jack Nagel | 2013-05-15 22:19:58 -0500 |
| commit | 1614a13cc498b2d7b3bf047017ffa3ba693ee5e3 (patch) | |
| tree | 360d724808d72afb3e5daff206f2d250c9d3eac2 /Library/Homebrew/cmd | |
| parent | 8caa48cf7d12a731d8f592c67f3a4351f31117bf (diff) | |
| download | homebrew-1614a13cc498b2d7b3bf047017ffa3ba693ee5e3.tar.bz2 | |
uninstall: stop assuming kegs always map to formulae
Diffstat (limited to 'Library/Homebrew/cmd')
| -rw-r--r-- | Library/Homebrew/cmd/uninstall.rb | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/Library/Homebrew/cmd/uninstall.rb b/Library/Homebrew/cmd/uninstall.rb index cf4f098ee..6929a49a7 100644 --- a/Library/Homebrew/cmd/uninstall.rb +++ b/Library/Homebrew/cmd/uninstall.rb @@ -23,20 +23,18 @@ module Homebrew extend self raise "Invalid usage" if name.include? '/' rack = HOMEBREW_CELLAR/name + if rack.directory? puts "Uninstalling #{name}..." - rack.children.each do |keg| - if keg.directory? - keg = Keg.new(keg) - keg.unlink - Formula.factory(keg.fname).unpin - keg.rmtree - end + rack.subdirs.map { |d| Keg.new(d) }.each do |keg| + keg.unlink + keg.rmtree end rack.rmtree end rm_opt_link name + rm_pin name end end rescue MultipleVersionsInstalledError => e |
