##// END OF EJS Templates
diff: when diffing a revision with a deleted subrepo, maintain the node context (issue3153)
Alistair Bell -
r15698:43e068c1 stable
parent child Browse files
Show More
@@ -588,16 +588,17 b' def diffordiffstat(ui, repo, diffopts, n'
588 588 ctx1 = repo[node1]
589 589 ctx2 = repo[node2]
590 590 for subpath, sub in subrepo.itersubrepos(ctx1, ctx2):
591 tempnode2 = node2
591 592 try:
592 593 if node2 is not None:
593 node2 = ctx2.substate[subpath][1]
594 tempnode2 = ctx2.substate[subpath][1]
594 595 except KeyError:
595 596 # A subrepo that existed in node1 was deleted between node1 and
596 597 # node2 (inclusive). Thus, ctx2's substate won't contain that
597 598 # subpath. The best we can do is to ignore it.
598 node2 = None
599 tempnode2 = None
599 600 submatch = matchmod.narrowmatcher(subpath, match)
600 sub.diff(diffopts, node2, submatch, changes=changes,
601 sub.diff(diffopts, tempnode2, submatch, changes=changes,
601 602 stat=stat, fp=fp, prefix=prefix)
602 603
603 604 class changeset_printer(object):
General Comments 0
You need to be logged in to leave comments. Login now