# HG changeset patch # User Pierre-Yves David # Date 1625701661 -7200 # Node ID 12300ee6840b556164c6c72c678850aa8875a5ef # Parent 40811cc7fa56d9c8e985cc344a970dce44997ec9 largefile: use `parentchange` during rollback rollback is updating parent without touching the working copy. It should wrapped in a `parentchange` context. Differential Revision: https://phab.mercurial-scm.org/D11108 diff -r 40811cc7fa56 -r 12300ee6840b hgext/largefiles/overrides.py --- a/hgext/largefiles/overrides.py Thu Jul 08 01:44:49 2021 +0200 +++ b/hgext/largefiles/overrides.py Thu Jul 08 01:47:41 2021 +0200 @@ -1636,13 +1636,14 @@ repo.wvfs.unlinkpath(standin, ignoremissing=True) lfdirstate = lfutil.openlfdirstate(ui, repo) - orphans = set(lfdirstate) - lfiles = lfutil.listlfiles(repo) - for file in lfiles: - lfutil.synclfdirstate(repo, lfdirstate, file, True) - orphans.discard(file) - for lfile in orphans: - lfdirstate.drop(lfile) + with lfdirstate.parentchange(): + orphans = set(lfdirstate) + lfiles = lfutil.listlfiles(repo) + for file in lfiles: + lfutil.synclfdirstate(repo, lfdirstate, file, True) + orphans.discard(file) + for lfile in orphans: + lfdirstate.drop(lfile) lfdirstate.write() return result