branch heads: fix regression introduced in
e67e5b60e55f (
issue1726)
For merge nodes it is not adequate to only check a single possible
branch head for whether it is an ancestor of the latest head, but it
needs to be done for each possible branch head.
% prepare repo
adding FOO.txt
adding QUICK.txt
adding bar.txt
% verify
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
3 files, 1 changesets, 3 total revisions
% introduce some bugs in repo
% verify
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
data/FOO.txt.i@0: missing revlog!
0: empty or missing FOO.txt
FOO.txt@0: f62022d3d590 in manifests not found
data/QUICK.txt.i@0: missing revlog!
0: empty or missing QUICK.txt
QUICK.txt@0: 88b857db8eba in manifests not found
data/bar.txt.i@0: missing revlog!
0: empty or missing bar.txt
bar.txt@0: 256559129457 in manifests not found
3 files, 1 changesets, 0 total revisions
9 integrity errors encountered!
(first damaged changeset appears to be 0)
% test revlog corruption
% verify
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
a@0: broken revlog! (index data/a.i is corrupted)
warning: orphan revlog 'data/a.i'
1 files, 1 changesets, 0 total revisions
1 warnings encountered!
1 integrity errors encountered!
(first damaged changeset appears to be 0)