diff options
author | Piotr Wach <pwach@bloomberg.net> | 2024-01-14 00:43:31 +0000 |
---|---|---|
committer | Piotr Wach <pwach@bloomberg.net> | 2024-01-14 15:01:17 +0000 |
commit | eeae2bc238871a5883624ced30a5ee43b4f8fdfb (patch) | |
tree | 4a8d3c64c6c1e8b5544882a0bed34c3525020ef4 /src/traverse.rs | |
parent | 96ef242d3b00dfb46800b179595114fecb62fa35 (diff) |
Fix file count
Diffstat (limited to 'src/traverse.rs')
-rw-r--r-- | src/traverse.rs | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/traverse.rs b/src/traverse.rs index 94eb9d9..f8b343d 100644 --- a/src/traverse.rs +++ b/src/traverse.rs @@ -270,6 +270,7 @@ impl BackgroundTraversal { let mut file_size = 0u128; let mut mtime: SystemTime = UNIX_EPOCH; + let mut file_count = 0u64; match &entry.client_state { Some(Ok(ref m)) => { if !m.is_dir() @@ -277,6 +278,7 @@ impl BackgroundTraversal { && (self.walk_options.cross_filesystems || crossdev::is_same_device(device_id, m)) { + file_count = 1; if self.walk_options.apparent_size { file_size = m.len() as u128; } else { @@ -316,7 +318,7 @@ impl BackgroundTraversal { .push(self.current_directory_at_depth); self.current_directory_at_depth = EntryInfo { size: file_size, - entries_count: Some(1), + entries_count: Some(file_count), }; self.parent_node_idx = self.previous_node_idx; } @@ -340,7 +342,7 @@ impl BackgroundTraversal { *self .current_directory_at_depth .entries_count - .get_or_insert(0) += 1; + .get_or_insert(0) += file_count; set_entry_info_or_panic( &mut traversal.tree, self.parent_node_idx, @@ -352,7 +354,7 @@ impl BackgroundTraversal { *self .current_directory_at_depth .entries_count - .get_or_insert(0) += 1; + .get_or_insert(0) += file_count; } }; |