diff -r 25d93c61cef4 -r f303b569134c mercurial/graphmod.py --- a/mercurial/graphmod.py Wed Apr 20 21:33:02 2016 +0000 +++ b/mercurial/graphmod.py Wed Apr 20 18:26:29 2016 +0100 @@ -401,6 +401,7 @@ edges = [(nodeidx, nextseen.index(p)) for p in knownparents if p != nullrev] + seen[:] = nextseen while len(newparents) > 2: # ascii() only knows how to add or remove a single column between two # calls. Nodes with more than two parents break this constraint so we @@ -422,7 +423,6 @@ if len(newparents) > 1: edges.append((nodeidx, nodeidx + 1)) nmorecols = len(nextseen) - ncols - seen[:] = nextseen # remove current node from edge characters, no longer needed state['edges'].pop(rev, None) yield (type, char, lines, (nodeidx, edges, ncols, nmorecols))