diff --git a/mercurial/verify.py b/mercurial/verify.py --- a/mercurial/verify.py +++ b/mercurial/verify.py @@ -128,6 +128,8 @@ def _verify(repo): lr = checkentry(mf, i, n, seen, mflinkrevs.get(n, []), "manifest") if n in mflinkrevs: del mflinkrevs[n] + else: + err(lr, _("%s not in changesets") % short(n), "manifest") try: for f, fn in mf.readdelta(n).iteritems(): diff --git a/tests/test-repair-strip.out b/tests/test-repair-strip.out --- a/tests/test-repair-strip.out +++ b/tests/test-repair-strip.out @@ -62,7 +62,9 @@ abort: Permission denied .hg/store/00man checking changesets checking manifests manifest@?: rev 2 points to nonexistent changeset 2 + manifest@?: 3362547cdf64 not in changesets manifest@?: rev 3 points to nonexistent changeset 3 + manifest@?: 265a85892ecb not in changesets crosschecking files in changesets and manifests c@3: in manifest but not in changeset checking files @@ -71,7 +73,7 @@ checking files c@?: rev 0 points to nonexistent changeset 3 3 files, 2 changesets, 4 total revisions 1 warnings encountered! -5 integrity errors encountered! +7 integrity errors encountered! (first damaged changeset appears to be 3) % journal contents 00changelog.i