Report non-empty directories [ci skip]

No longer used or generated files/directories sometimes remain
unremoved.
This commit is contained in:
Nobuyoshi Nakada 2022-05-31 16:14:20 +09:00
Родитель 2976d91aff
Коммит d94ad00252
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 3582D74E1FEE4465
1 изменённых файлов: 9 добавлений и 1 удалений

Просмотреть файл

@ -63,6 +63,7 @@ END {
$dirs.each do |dir|
unlink[dir] = true
end
nonempty = {}
while dir = $dirs.pop
dir = File.dirname(dir) while File.basename(dir) == '.'
message "rmdir #{dir}"
@ -76,16 +77,23 @@ END {
raise unless File.symlink?(realdir)
File.unlink(realdir)
end
rescue Errno::ENOENT, Errno::ENOTEMPTY
rescue Errno::ENOTEMPTY
nonempty[dir] = true
rescue Errno::ENOENT
rescue
status = false
puts $!
else
nonempty.delete(dir)
parent = File.dirname(dir)
$dirs.push(parent) unless parent == dir or unlink[parent]
end
end
end
message
unless nonempty.empty?
puts "Non empty director#{nonempty.size == 1 ? 'y' : 'ies'}:"
nonempty.each_key {|dir| print " #{dir}\n"}
end
exit(status)
}