dirstate-item: replace call to new_from_p2
The constructor is on its way out, so we inline the last relevant call before
dropping it.
Differential Revision: https://phab.mercurial-scm.org/D11602
--- a/mercurial/pure/parsers.py Fri Oct 01 09:16:53 2021 +0200
+++ b/mercurial/pure/parsers.py Fri Oct 01 09:21:52 2021 +0200
@@ -162,7 +162,7 @@
return cls(p1_tracked=p1_tracked, p2_info=p2_info)
elif state == b'n':
if size == FROM_P2:
- return cls.new_from_p2()
+ return cls(wc_tracked=True, p2_info=True)
elif size == NONNORMAL:
return cls.new_possibly_dirty()
elif mtime == AMBIGUOUS_TIME:
--- a/rust/hg-core/src/dirstate/entry.rs Fri Oct 01 09:16:53 2021 +0200
+++ b/rust/hg-core/src/dirstate/entry.rs Fri Oct 01 09:21:52 2021 +0200
@@ -68,7 +68,12 @@
match state {
EntryState::Normal => {
if size == SIZE_FROM_OTHER_PARENT {
- Self::new_from_p2()
+ Self {
+ // might be missing P1_TRACKED
+ flags: Flags::WDIR_TRACKED | Flags::P2_INFO,
+ mode_size: None,
+ mtime: None,
+ }
} else if size == SIZE_NON_NORMAL {
Self::new_possibly_dirty()
} else if mtime == MTIME_UNSET {