uninstall: stop assuming kegs always map to formulae

This commit is contained in:
Jack Nagel 2013-05-15 22:13:56 -05:00
parent d3a8cb7803
commit 12b63fdd5c

View File

@ -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