Mercurial > hg
diff mercurial/localrepo.py @ 41228:3b35ebdb9f8c
narrow: include working copy narrowspec in transaction journal
Now that we have separate narrowspecs for the store and the working
copy, we need to include both in the transaction journal.
Differential Revision: https://phab.mercurial-scm.org/D5505
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Sat, 29 Dec 2018 22:34:38 -0800 |
parents | 0f2b8d51bfdf |
children | 50ca531f1f24 |
line wrap: on
line diff
--- a/mercurial/localrepo.py Sat Dec 29 22:27:39 2018 -0800 +++ b/mercurial/localrepo.py Sat Dec 29 22:34:38 2018 -0800 @@ -1836,6 +1836,7 @@ # discard all changes (including ones already written # out) in this transaction narrowspec.restorebackup(self, 'journal.narrowspec') + narrowspec.restorewcbackup(self, 'journal.narrowspec.dirstate') repo.dirstate.restorebackup(None, 'journal.dirstate') repo.invalidate(clearfilecache=True) @@ -1913,6 +1914,7 @@ def _journalfiles(self): return ((self.svfs, 'journal'), (self.svfs, 'journal.narrowspec'), + (self.vfs, 'journal.narrowspec.dirstate'), (self.vfs, 'journal.dirstate'), (self.vfs, 'journal.branch'), (self.vfs, 'journal.desc'), @@ -1925,6 +1927,7 @@ @unfilteredmethod def _writejournal(self, desc): self.dirstate.savebackup(None, 'journal.dirstate') + narrowspec.savewcbackup(self, 'journal.narrowspec.dirstate') narrowspec.savebackup(self, 'journal.narrowspec') self.vfs.write("journal.branch", encoding.fromlocal(self.dirstate.branch())) @@ -2014,6 +2017,7 @@ dsguard.close() narrowspec.restorebackup(self, 'undo.narrowspec') + narrowspec.restorewcbackup(self, 'undo.narrowspec.dirstate') self.dirstate.restorebackup(None, 'undo.dirstate') try: branch = self.vfs.read('undo.branch')