# HG changeset patch # User Benoit Boissinot # Date 1160646026 -7200 # Node ID ef8307585b418431c9d77d1b17a61290c305ce71 # Parent 41741218504d19b7613502b322d13ff6a2b39bae nodesbetween: fix a bug with duplicate heads diff -r 41741218504d -r ef8307585b41 mercurial/revlog.py --- a/mercurial/revlog.py Wed Oct 11 16:56:41 2006 -0700 +++ b/mercurial/revlog.py Thu Oct 12 11:40:26 2006 +0200 @@ -599,12 +599,12 @@ if not heads: return nonodes ancestors = {} - # Start at the top and keep marking parents until we're done. - nodestotag = heads[:] # Turn heads into a dictionary so we can remove 'fake' heads. # Also, later we will be using it to filter out the heads we can't # find from roots. heads = dict.fromkeys(heads, 0) + # Start at the top and keep marking parents until we're done. + nodestotag = heads.keys() # Remember where the top was so we can use it as a limit later. highestrev = max([self.rev(n) for n in nodestotag]) while nodestotag: diff -r 41741218504d -r ef8307585b41 tests/test-bundle-r --- a/tests/test-bundle-r Wed Oct 11 16:56:41 2006 -0700 +++ b/tests/test-bundle-r Thu Oct 12 11:40:26 2006 +0200 @@ -72,6 +72,10 @@ hg -R test bundle --base 2 -r 7 test-bundle-branch2.hg hg -R test bundle --base 2 test-bundle-all.hg hg -R test bundle --base 3 -r tip test-bundle-should-fail.hg + +# issue76 msg2163 +hg -R test bundle --base 3 -r 3 -r 3 test-bundle-cset-3.hg + hg clone test-2 test-9 cd test-9 echo % 2