# HG changeset patch # User Martin von Zweigbergk # Date 1546151678 28800 # Node ID 3b35ebdb9f8c8d772c023020de8a146599ecd291 # Parent b744810384384ac73a1cf2ed2452f40c8572edd3 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 diff -r b74481038438 -r 3b35ebdb9f8c mercurial/localrepo.py --- 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')