--- a/mercurial/context.py Fri Dec 12 15:53:17 2014 -0500
+++ b/mercurial/context.py Mon Dec 15 15:00:54 2014 -0500
@@ -1625,9 +1625,10 @@
# keep this simple for now; just worry about p1
pctx = self._parents[0]
+ pman = pctx.manifest()
man = pctx.manifest().copy()
- for f, fnode in man.iteritems():
+ for f, fnode in pman.iteritems():
p1node = nullid
p2node = nullid
p = pctx[f].parents() # if file isn't in pctx, check p2?
@@ -1635,7 +1636,12 @@
p1node = p[0].node()
if len(p) > 1:
p2node = p[1].node()
- man[f] = revlog.hash(self[f].data(), p1node, p2node)
+ fctx = self[f]
+ if fctx is None:
+ # removed file
+ del man[f]
+ else:
+ man[f] = revlog.hash(fctx.data(), p1node, p2node)
return man