Mercurial > public > mercurial-scm > hg-stable
diff hgext/largefiles/lfutil.py @ 48156:6f54afb094bd
dirstate: align the dirstate's API to the lower level ones
This conclude the refactoring of this API. We can now finalize the dirstate v2
on disk format.
Differential Revision: https://phab.mercurial-scm.org/D11587
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Thu, 30 Sep 2021 16:33:12 +0200 |
parents | 82e142b9ad18 |
children | df3021c1f093 |
line wrap: on
line diff
--- a/hgext/largefiles/lfutil.py Fri Oct 01 04:07:21 2021 +0200 +++ b/hgext/largefiles/lfutil.py Thu Sep 30 16:33:12 2021 +0200 @@ -558,24 +558,14 @@ if lfstandin not in repo.dirstate: lfdirstate.update_file(lfile, p1_tracked=False, wc_tracked=False) else: - stat = repo.dirstate.get_entry(lfstandin) - state, mtime = stat.state, stat.mtime - if state == b'n': - if normallookup or mtime < 0 or not repo.wvfs.exists(lfile): - # state 'n' doesn't ensure 'clean' in this case - lfdirstate.update_file( - lfile, p1_tracked=True, wc_tracked=True, possibly_dirty=True - ) - else: - lfdirstate.update_file(lfile, p1_tracked=True, wc_tracked=True) - elif state == b'm': - lfdirstate.update_file( - lfile, p1_tracked=True, wc_tracked=True, merged=True - ) - elif state == b'r': - lfdirstate.update_file(lfile, p1_tracked=True, wc_tracked=False) - elif state == b'a': - lfdirstate.update_file(lfile, p1_tracked=False, wc_tracked=True) + entry = repo.dirstate.get_entry(lfstandin) + lfdirstate.update_file( + lfile, + wc_tracked=entry.tracked, + p1_tracked=entry.p1_tracked, + p2_info=entry.p2_info, + possibly_dirty=True, + ) def markcommitted(orig, ctx, node):