--- a/mercurial/context.py Mon Jan 05 16:52:12 2015 -0800
+++ b/mercurial/context.py Mon Jan 05 17:12:04 2015 -0800
@@ -140,16 +140,17 @@
deletedset = set(deleted)
withflags = mf1.withflags() | mf2.withflags()
for fn, mf2node in mf2.iteritems():
+ if fn in deletedset:
+ continue
if fn in mf1:
- if (fn not in deletedset and
- ((fn in withflags and mf1.flags(fn) != mf2.flags(fn)) or
+ if ((fn in withflags and mf1.flags(fn) != mf2.flags(fn)) or
(mf1[fn] != mf2node and
- (mf2node != _newnode or self[fn].cmp(other[fn]))))):
+ (mf2node != _newnode or self[fn].cmp(other[fn])))):
modified.append(fn)
elif listclean:
clean.append(fn)
del mf1[fn]
- elif fn not in deletedset:
+ else:
added.append(fn)
removed = mf1.keys()
if removed: