From 24224dc8968e00fb48f2721ab480492da0668fd2 Mon Sep 17 00:00:00 2001 From: Xu Cheng Date: Wed, 30 Dec 2015 16:27:15 +0800 Subject: [PATCH] pathname: improve compute_disk_usage * Avoid parallel assignment. * Use Pathname#size instead of File#size * Use Pathname#directory? instead of File#directory? * Use basename to check `.DS_Store`. Original regex has poor performance, and may match with incorrect file. --- Library/Homebrew/extend/pathname.rb | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Library/Homebrew/extend/pathname.rb b/Library/Homebrew/extend/pathname.rb index 7bdeb21886..0b54fdcf13 100644 --- a/Library/Homebrew/extend/pathname.rb +++ b/Library/Homebrew/extend/pathname.rb @@ -27,11 +27,12 @@ module DiskUsageExtension def compute_disk_usage if self.directory? - @file_count, @disk_usage = [0, 0] + @file_count = 0 + @disk_usage = 0 self.find do |f| - if !File.directory?(f) and !f.to_s.match(/\.DS_Store/) + if !f.directory? && f.basename.to_s != ".DS_Store" @file_count += 1 - @disk_usage += File.size(f) + @disk_usage += f.size end end else