diff -r 955084b4f74f -r 7d9bd50afe3d mercurial/metadata.py --- a/mercurial/metadata.py Thu Aug 01 13:04:38 2024 +0100 +++ b/mercurial/metadata.py Thu Aug 01 11:14:58 2024 +0100 @@ -243,7 +243,7 @@ return _process_linear(p1, ctx) elif p1.rev() == nullrev and p2.rev() != nullrev: # In the wild, one can encounter changeset where p1 is null but p2 is not - return _process_linear(p1, ctx, parent=2) + return _process_linear(p2, ctx, parent=2) elif p1.rev() == p2.rev(): # In the wild, one can encounter such "non-merge" return _process_linear(p1, ctx)