Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/localrepo.py @ 23311:64ab33ffba14
transaction: use the location value when doing backup
We finally use the 'location' value coupled with the 'vfsmap' to restore backup
for the right file.
author | Pierre-Yves David <pierre-yves.david@fb.com> |
---|---|
date | Fri, 17 Oct 2014 21:04:35 -0700 |
parents | 5bd1f6572db0 |
children | 86c6f06feb04 |
comparison
equal
deleted
inserted
replaced
23310:5bd1f6572db0 | 23311:64ab33ffba14 |
---|---|
917 def recover(self): | 917 def recover(self): |
918 lock = self.lock() | 918 lock = self.lock() |
919 try: | 919 try: |
920 if self.svfs.exists("journal"): | 920 if self.svfs.exists("journal"): |
921 self.ui.status(_("rolling back interrupted transaction\n")) | 921 self.ui.status(_("rolling back interrupted transaction\n")) |
922 transaction.rollback(self.sopener, "journal", | 922 vfsmap = {'': self.sopener, |
923 'plain': self.opener,} | |
924 transaction.rollback(self.sopener, vfsmap, "journal", | |
923 self.ui.warn) | 925 self.ui.warn) |
924 self.invalidate() | 926 self.invalidate() |
925 return True | 927 return True |
926 else: | 928 else: |
927 self.ui.warn(_("no interrupted transaction available\n")) | 929 self.ui.warn(_("no interrupted transaction available\n")) |
973 if dryrun: | 975 if dryrun: |
974 return 0 | 976 return 0 |
975 | 977 |
976 parents = self.dirstate.parents() | 978 parents = self.dirstate.parents() |
977 self.destroying() | 979 self.destroying() |
978 transaction.rollback(self.sopener, 'undo', ui.warn) | 980 vfsmap = {'plain': self.opener} |
981 transaction.rollback(self.sopener, vfsmap, 'undo', ui.warn) | |
979 if self.vfs.exists('undo.bookmarks'): | 982 if self.vfs.exists('undo.bookmarks'): |
980 self.vfs.rename('undo.bookmarks', 'bookmarks') | 983 self.vfs.rename('undo.bookmarks', 'bookmarks') |
981 if self.svfs.exists('undo.phaseroots'): | 984 if self.svfs.exists('undo.phaseroots'): |
982 self.svfs.rename('undo.phaseroots', 'phaseroots') | 985 self.svfs.rename('undo.phaseroots', 'phaseroots') |
983 self.invalidate() | 986 self.invalidate() |