--- a/rust/hg-core/src/dirstate_tree/on_disk.rs Tue Oct 19 10:52:13 2021 +0100
+++ b/rust/hg-core/src/dirstate_tree/on_disk.rs Fri Oct 15 16:12:00 2021 +0200
@@ -110,6 +110,7 @@
const HAS_DIRECTORY_MTIME = 1 << 5;
const MODE_EXEC_PERM = 1 << 6;
const MODE_IS_SYMLINK = 1 << 7;
+ const EXPECTED_STATE_IS_MODIFIED = 1 << 8;
}
}
@@ -351,12 +352,16 @@
let wdir_tracked = self.flags().contains(Flags::WDIR_TRACKED);
let p1_tracked = self.flags().contains(Flags::P1_TRACKED);
let p2_info = self.flags().contains(Flags::P2_INFO);
- let mode_size = if self.flags().contains(Flags::HAS_MODE_AND_SIZE) {
+ let mode_size = if self.flags().contains(Flags::HAS_MODE_AND_SIZE)
+ && !self.flags().contains(Flags::EXPECTED_STATE_IS_MODIFIED)
+ {
Some((self.synthesize_unix_mode(), self.size.into()))
} else {
None
};
- let mtime = if self.flags().contains(Flags::HAS_FILE_MTIME) {
+ let mtime = if self.flags().contains(Flags::HAS_FILE_MTIME)
+ && !self.flags().contains(Flags::EXPECTED_STATE_IS_MODIFIED)
+ {
Some(self.mtime.truncated_seconds.into())
} else {
None