mercurial/verify.py
changeset 41870 00c9fde75c1a
parent 41869 4da2261e949b
child 41871 9e737ca539f6
equal deleted inserted replaced
41869:4da2261e949b 41870:00c9fde75c1a
    92                 self._warn(_("warning: `%s' uses revlog format 1") % name)
    92                 self._warn(_("warning: `%s' uses revlog format 1") % name)
    93         elif self.revlogv1:
    93         elif self.revlogv1:
    94             self._warn(_("warning: `%s' uses revlog format 0") % name)
    94             self._warn(_("warning: `%s' uses revlog format 0") % name)
    95 
    95 
    96     def checkentry(self, obj, i, node, seen, linkrevs, f):
    96     def checkentry(self, obj, i, node, seen, linkrevs, f):
       
    97         """verify a single revlog entry
       
    98 
       
    99         arguments are:
       
   100         - obj:      the source revlog
       
   101         - i:        the revision number
       
   102         - node:        the revision node id
       
   103         - seen:     nodes previously seen for this revlog
       
   104         - linkrevs: [changelog-revisions] introducing "node"
       
   105         - f:        string label ("changelog", "manifest", or filename)
       
   106 
       
   107         Performs the following checks:
       
   108         - linkrev points to an existing changelog revision,
       
   109         - linkrev points to a changelog revision that introduces this revision,
       
   110         - linkrev points to the lowest of these changesets,
       
   111         - both parents exist in the revlog,
       
   112         - the revision is not duplicated.
       
   113 
       
   114         Return the linkrev of the revision (or None for changelog's revisions).
       
   115         """
    97         lr = obj.linkrev(obj.rev(node))
   116         lr = obj.linkrev(obj.rev(node))
    98         if lr < 0 or (self.havecl and lr not in linkrevs):
   117         if lr < 0 or (self.havecl and lr not in linkrevs):
    99             if lr < 0 or lr >= len(self.repo.changelog):
   118             if lr < 0 or lr >= len(self.repo.changelog):
   100                 msg = _("rev %d points to nonexistent changeset %d")
   119                 msg = _("rev %d points to nonexistent changeset %d")
   101             else:
   120             else: