--- a/mercurial/merge.py Thu Dec 11 21:58:49 2014 -0800
+++ b/mercurial/merge.py Thu Dec 11 22:07:41 2014 -0800
@@ -621,12 +621,6 @@
fractions = _forgetremoved(wctx, mctx, branchmerge)
actions.update(fractions)
- # Convert to dictionary-of-lists format
- actionbyfile = actions
- actions = dict((m, []) for m in 'a f g cd dc r dm dg m e k'.split())
- for f, (m, args, msg) in actionbyfile.iteritems():
- actions[m].append((f, args, msg))
-
return actions, diverge, renamedelete
def batchremove(repo, actions):
@@ -1069,9 +1063,15 @@
followcopies = True
### calculate phase
- actions, diverge, renamedelete = calculateupdates(
+ actionbyfile, diverge, renamedelete = calculateupdates(
repo, wc, p2, pas, branchmerge, force, partial, mergeancestor,
followcopies)
+ # Convert to dictionary-of-lists format
+ actions = dict((m, []) for m in 'a f g cd dc r dm dg m e k'.split())
+ for f, (m, args, msg) in actionbyfile.iteritems():
+ if m not in actions:
+ actions[m] = []
+ actions[m].append((f, args, msg))
if not util.checkcase(repo.path):
# check collision between files only in p2 for clean update