diff -r fc1b77db123f -r 5cc71484ee9c mercurial/merge.py --- a/mercurial/merge.py Tue Apr 30 13:53:49 2013 +0200 +++ b/mercurial/merge.py Mon Apr 29 15:58:15 2013 +0900 @@ -455,8 +455,10 @@ numupdates = len(actions) workeractions = [a for a in actions if a[1] in 'gr'] - updated = len([a for a in workeractions if a[1] == 'g']) - removed = len([a for a in workeractions if a[1] == 'r']) + updateactions = [a for a in workeractions if a[1] == 'g'] + updated = len(updateactions) + removeactions = [a for a in workeractions if a[1] == 'r'] + removed = len(removeactions) actions = [a for a in actions if a[1] not in 'gr'] hgsub = [a[1] for a in workeractions if a[0] == '.hgsubstate'] @@ -465,7 +467,13 @@ z = 0 prog = worker.worker(repo.ui, 0.001, getremove, (repo, mctx, overwrite), - workeractions) + removeactions) + for i, item in prog: + z += i + repo.ui.progress(_('updating'), z, item=item, total=numupdates, + unit=_('files')) + prog = worker.worker(repo.ui, 0.001, getremove, (repo, mctx, overwrite), + updateactions) for i, item in prog: z += i repo.ui.progress(_('updating'), z, item=item, total=numupdates,