# HG changeset patch # User Matt Mackall # Date 1162929855 21600 # Node ID 8c4fd0de5de86a5f93a7e7870cdf039135def738 # Parent 3109f012c305ae3c4bf580753b7385258314d6ff Fix up parent display in logging For changesets with a first parent nullid, but not rev 0, we ought to display a null parent. diff --git a/mercurial/commands.py b/mercurial/commands.py --- a/mercurial/commands.py +++ b/mercurial/commands.py @@ -324,12 +324,13 @@ class changeset_printer(object): parents = log.parentrevs(rev) if not self.ui.debugflag: - parents = [p for p in parents if p != nullrev] - if len(parents) == 1 and parents[0] == rev-1: - parents = [] + if parents[1] == nullrev: + if parents[0] >= rev - 1: + parents = [] + else: + parents = [parents[0]] parents = [(p, hexfunc(log.node(p))) for p in parents] - self.ui.write(_("changeset: %d:%s\n") % (rev, hexfunc(changenode))) if branch: diff --git a/tests/test-globalopts.out b/tests/test-globalopts.out --- a/tests/test-globalopts.out +++ b/tests/test-globalopts.out @@ -27,6 +27,7 @@ summary: b %% abbrev of long option changeset: 1:b6c483daf290 tag: tip +parent: -1:000000000000 user: test date: Thu Jan 01 00:00:01 1970 +0000 summary: b @@ -49,6 +50,7 @@ 1:b6c483daf290 %% -v/--verbose changeset: 1:b6c483daf290 tag: tip +parent: -1:000000000000 user: test date: Thu Jan 01 00:00:01 1970 +0000 files: b diff --git a/tests/test-unrelated-pull.out b/tests/test-unrelated-pull.out --- a/tests/test-unrelated-pull.out +++ b/tests/test-unrelated-pull.out @@ -11,6 +11,7 @@ added 1 changesets with 1 changes to 1 f (run 'hg heads' to see heads, 'hg merge' to merge) changeset: 1:bdcee5d51fa6 tag: tip +parent: -1:000000000000 user: a date: Mon Jan 12 13:46:40 1970 +0000 summary: a