Skip to content

Commit

Permalink
use WalkDir
Browse files Browse the repository at this point in the history
  • Loading branch information
mistakenelf committed Oct 1, 2021
1 parent 0c6d75f commit d1176fb
Showing 1 changed file with 15 additions and 22 deletions.
37 changes: 15 additions & 22 deletions dirfs/dirfs.go
Original file line number Diff line number Diff line change
Expand Up @@ -390,30 +390,23 @@ func GetDirectoryItemSize(path string) (int64, error) {
return curFile.Size(), nil
}

entries, err := os.ReadDir(path)
if err != nil {
return 0, err
}

var total int64
for _, entry := range entries {
if entry.IsDir() {
size, err := GetDirectoryItemSize(filepath.Join(path, entry.Name()))
if err != nil {
return 0, err
}

total += size
} else {
info, err := entry.Info()
var size int64
err = filepath.WalkDir(path, func(path string, d os.DirEntry, err error) error {
if err != nil {
return err
}

if err != nil {
return 0, err
}
fileInfo, err := d.Info()
if err != nil {
return err
}

total += info.Size()
if !d.IsDir() {
size += fileInfo.Size()
}
}

return total, nil
return err
})

return size, err
}

0 comments on commit d1176fb

Please sign in to comment.