--- a/rust/hg-core/src/dirstate_tree/status.rs Thu Feb 17 07:34:49 2022 +0100
+++ b/rust/hg-core/src/dirstate_tree/status.rs Fri Feb 18 11:37:08 2022 +0100
@@ -778,7 +778,17 @@
let mut results = Vec::new();
for entry in read_dir_path.read_dir()? {
let entry = entry?;
- let metadata = entry.metadata()?;
+ let metadata = match entry.metadata() {
+ Ok(v) => v,
+ Err(e) => {
+ // race with file deletion?
+ if e.kind() == std::io::ErrorKind::NotFound {
+ continue;
+ } else {
+ return Err(e);
+ }
+ }
+ };
let file_name = entry.file_name();
// FIXME don't do this when cached
if file_name == ".hg" {