aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/cmd/prune.rb
diff options
context:
space:
mode:
authorJack Nagel2012-02-01 22:36:07 -0600
committerJack Nagel2012-02-01 22:52:15 -0600
commit4ce8bdb32c027fbace6bf019f4846b44e899d5cf (patch)
tree90aab418062acca998e6170285e59e38c2a7a889 /Library/Homebrew/cmd/prune.rb
parent8567570d976a672a8c7fb7a8f8292f3840e40d8b (diff)
downloadbrew-4ce8bdb32c027fbace6bf019f4846b44e899d5cf.tar.bz2
prune: remove info dir entries for pruned files
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
Diffstat (limited to 'Library/Homebrew/cmd/prune.rb')
-rw-r--r--Library/Homebrew/cmd/prune.rb9
1 files changed, 8 insertions, 1 deletions
diff --git a/Library/Homebrew/cmd/prune.rb b/Library/Homebrew/cmd/prune.rb
index 810d5279a..6c6f51549 100644
--- a/Library/Homebrew/cmd/prune.rb
+++ b/Library/Homebrew/cmd/prune.rb
@@ -1,3 +1,5 @@
+require 'keg'
+
module Homebrew extend self
# $n and $d are used by the ObserverPathnameExtension to keep track of
# certain filesystem actions.
@@ -11,7 +13,12 @@ module Homebrew extend self
path.find do |path|
path.extend ObserverPathnameExtension
if path.symlink?
- path.unlink unless path.resolved_path_exists?
+ unless path.resolved_path_exists?
+ if ENV['HOMEBREW_KEEP_INFO'] and path.to_s =~ Keg::INFOFILE_RX
+ path.uninstall_info
+ end
+ path.unlink
+ end
elsif path.directory?
dirs << path
end