##// END OF EJS Templates
mq: don't abort when merging a patch that removes files
Alexis S. L. Carvalho -
r4332:4e5e1638 default
parent child Browse files
Show More
@@ -457,8 +457,16 b' class queue:'
457 patcherr = not patcherr
457 patcherr = not patcherr
458
458
459 if merge and files:
459 if merge and files:
460 # Mark as merged and update dirstate parent info
460 # Mark as removed/merged and update dirstate parent info
461 repo.dirstate.update(repo.dirstate.filterfiles(files.keys()), 'm')
461 removed = []
462 merged = []
463 for f in files:
464 if os.path.exists(repo.dirstate.wjoin(f)):
465 merged.append(f)
466 else:
467 removed.append(f)
468 repo.dirstate.update(repo.dirstate.filterfiles(removed), 'r')
469 repo.dirstate.update(repo.dirstate.filterfiles(merged), 'm')
462 p1, p2 = repo.dirstate.parents()
470 p1, p2 = repo.dirstate.parents()
463 repo.dirstate.setparents(p1, merge)
471 repo.dirstate.setparents(p1, merge)
464 files = patch.updatedir(self.ui, repo, files, wlock=wlock)
472 files = patch.updatedir(self.ui, repo, files, wlock=wlock)
General Comments 0
You need to be logged in to leave comments. Login now