pathname: make compute_disk_usage handle symlinks.
This commit is contained in:
parent
a68d38743a
commit
6c2b614a04
@ -26,11 +26,17 @@ module DiskUsageExtension
|
|||||||
private
|
private
|
||||||
|
|
||||||
def compute_disk_usage
|
def compute_disk_usage
|
||||||
if directory?
|
path = if symlink?
|
||||||
|
resolved_path
|
||||||
|
else
|
||||||
|
self
|
||||||
|
end
|
||||||
|
|
||||||
|
if path.directory?
|
||||||
scanned_files = Set.new
|
scanned_files = Set.new
|
||||||
@file_count = 0
|
@file_count = 0
|
||||||
@disk_usage = 0
|
@disk_usage = 0
|
||||||
find do |f|
|
path.find do |f|
|
||||||
if f.directory?
|
if f.directory?
|
||||||
@disk_usage += f.lstat.size
|
@disk_usage += f.lstat.size
|
||||||
else
|
else
|
||||||
@ -47,7 +53,7 @@ module DiskUsageExtension
|
|||||||
end
|
end
|
||||||
else
|
else
|
||||||
@file_count = 1
|
@file_count = 1
|
||||||
@disk_usage = lstat.size
|
@disk_usage = path.lstat.size
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user