hgext/mq.py
changeset 5527 0b3f910dfd17
parent 5432 bfbd9b954315
child 5534 61c230f81068
equal deleted inserted replaced
5526:d5b9c74c910e 5527:0b3f910dfd17
   454                     repo.invalidate()
   454                     repo.invalidate()
   455                     repo.dirstate.invalidate()
   455                     repo.dirstate.invalidate()
   456                 raise
   456                 raise
   457         finally:
   457         finally:
   458             del tr, lock, wlock
   458             del tr, lock, wlock
       
   459             self.removeundo(repo)
   459 
   460 
   460     def _apply(self, repo, series, list=False, update_status=True,
   461     def _apply(self, repo, series, list=False, update_status=True,
   461                strict=False, patchdir=None, merge=None, all_files={}):
   462                strict=False, patchdir=None, merge=None, all_files={}):
   462         # TODO unify with commands.py
   463         # TODO unify with commands.py
   463         if not patchdir:
   464         if not patchdir:
   525 
   526 
   526             if fuzz and strict:
   527             if fuzz and strict:
   527                 self.ui.warn("fuzz found when applying patch, stopping\n")
   528                 self.ui.warn("fuzz found when applying patch, stopping\n")
   528                 err = 1
   529                 err = 1
   529                 break
   530                 break
   530         self.removeundo(repo)
       
   531         return (err, n)
   531         return (err, n)
   532 
   532 
   533     def delete(self, repo, patches, opts):
   533     def delete(self, repo, patches, opts):
   534         if not patches and not opts.get('rev'):
   534         if not patches and not opts.get('rev'):
   535             raise util.Abort(_('qdelete requires at least one revision or '
   535             raise util.Abort(_('qdelete requires at least one revision or '
   652                 hg.clean(repo, urev)
   652                 hg.clean(repo, urev)
   653                 repo.dirstate.write()
   653                 repo.dirstate.write()
   654 
   654 
   655             self.removeundo(repo)
   655             self.removeundo(repo)
   656             repair.strip(self.ui, repo, rev, backup)
   656             repair.strip(self.ui, repo, rev, backup)
       
   657             # strip may have unbundled a set of backed up revisions after
       
   658             # the actual strip
       
   659             self.removeundo(repo)
   657         finally:
   660         finally:
   658             del lock, wlock
   661             del lock, wlock
   659 
   662 
   660     def isapplied(self, patch):
   663     def isapplied(self, patch):
   661         """returns (index, rev, patch)"""
   664         """returns (index, rev, patch)"""