Show More
@@ -457,8 +457,16 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