mercurial/hg.py
changeset 785 46a8dd3145cc
parent 781 26f3d353851f
child 786 902b12d55751
equal deleted inserted replaced
784:853bfbf1a312 785:46a8dd3145cc
   673         # save dirstate for undo
   673         # save dirstate for undo
   674         try:
   674         try:
   675             ds = self.opener("dirstate").read()
   675             ds = self.opener("dirstate").read()
   676         except IOError:
   676         except IOError:
   677             ds = ""
   677             ds = ""
   678         self.opener("undo.dirstate", "w").write(ds)
   678         self.opener("journal.dirstate", "w").write(ds)
   679 
   679 
   680         return transaction.transaction(self.ui.warn,
   680         def after():
   681                                        self.opener, self.join("journal"),
   681             util.rename(self.join("journal"), self.join("undo"))
   682                                        self.join("undo"))
   682             util.rename(self.join("journal.dirstate"),
       
   683                         self.join("undo.dirstate"))
       
   684 
       
   685         return transaction.transaction(self.ui.warn, self.opener,
       
   686                                        self.join("journal"), after)
   683 
   687 
   684     def recover(self):
   688     def recover(self):
   685         lock = self.lock()
   689         lock = self.lock()
   686         if os.path.exists(self.join("journal")):
   690         if os.path.exists(self.join("journal")):
   687             self.ui.status("rolling back interrupted transaction\n")
   691             self.ui.status("rolling back interrupted transaction\n")