##// END OF EJS Templates
rollback: remove the dirstateguard usage...
marmoute -
r50966:d91fc026 default
parent child Browse files
Show More
@@ -42,7 +42,6 b' from . import ('
42 commit,
42 commit,
43 context,
43 context,
44 dirstate,
44 dirstate,
45 dirstateguard,
46 discovery,
45 discovery,
47 encoding,
46 encoding,
48 error,
47 error,
@@ -2695,22 +2694,20 b' class localrepository:'
2695 return False
2694 return False
2696
2695
2697 def rollback(self, dryrun=False, force=False):
2696 def rollback(self, dryrun=False, force=False):
2698 wlock = lock = dsguard = None
2697 wlock = lock = None
2699 try:
2698 try:
2700 wlock = self.wlock()
2699 wlock = self.wlock()
2701 lock = self.lock()
2700 lock = self.lock()
2702 if self.svfs.exists(b"undo"):
2701 if self.svfs.exists(b"undo"):
2703 dsguard = dirstateguard.dirstateguard(self, b'rollback')
2702 return self._rollback(dryrun, force)
2704
2705 return self._rollback(dryrun, force, dsguard)
2706 else:
2703 else:
2707 self.ui.warn(_(b"no rollback information available\n"))
2704 self.ui.warn(_(b"no rollback information available\n"))
2708 return 1
2705 return 1
2709 finally:
2706 finally:
2710 release(dsguard, lock, wlock)
2707 release(lock, wlock)
2711
2708
2712 @unfilteredmethod # Until we get smarter cache management
2709 @unfilteredmethod # Until we get smarter cache management
2713 def _rollback(self, dryrun, force, dsguard):
2710 def _rollback(self, dryrun, force):
2714 ui = self.ui
2711 ui = self.ui
2715
2712
2716 parents = self.dirstate.parents()
2713 parents = self.dirstate.parents()
@@ -2772,9 +2769,6 b' class localrepository:'
2772 self.invalidate()
2769 self.invalidate()
2773
2770
2774 if parentgone:
2771 if parentgone:
2775 # prevent dirstateguard from overwriting already restored one
2776 dsguard.close()
2777
2778 narrowspec.restorebackup(self, b'undo.narrowspec')
2772 narrowspec.restorebackup(self, b'undo.narrowspec')
2779 narrowspec.restorewcbackup(self, b'undo.narrowspec.dirstate')
2773 narrowspec.restorewcbackup(self, b'undo.narrowspec.dirstate')
2780 self.dirstate.restorebackup(None, b'undo.dirstate')
2774 self.dirstate.restorebackup(None, b'undo.dirstate')
General Comments 0
You need to be logged in to leave comments. Login now