mercurial/verify.py
changeset 7832 1fce19b9b011
parent 7676 43cfbb21f04d
child 7833 794def2fe232
equal deleted inserted replaced
7831:b5ed0ab8cc74 7832:1fce19b9b011
     5 # This software may be used and distributed according to the terms
     5 # This software may be used and distributed according to the terms
     6 # of the GNU General Public License, incorporated herein by reference.
     6 # of the GNU General Public License, incorporated herein by reference.
     7 
     7 
     8 from node import nullid, short
     8 from node import nullid, short
     9 from i18n import _
     9 from i18n import _
    10 import revlog, util
    10 import revlog, util, error
    11 
    11 
    12 def verify(repo):
    12 def verify(repo):
    13     lock = repo.lock()
    13     lock = repo.lock()
    14     try:
    14     try:
    15         return _verify(repo)
    15         return _verify(repo)
   170         elif size > 0:
   170         elif size > 0:
   171             storefiles[f] = True
   171             storefiles[f] = True
   172 
   172 
   173     files = util.sort(util.unique(filenodes.keys() + filelinkrevs.keys()))
   173     files = util.sort(util.unique(filenodes.keys() + filelinkrevs.keys()))
   174     for f in files:
   174     for f in files:
   175         fl = repo.file(f)
   175         try:
       
   176             fl = repo.file(f)
       
   177         except error.RevlogError, e:
       
   178             err(0, _("broken revlog! (%s)") % e, f)
       
   179             continue
   176 
   180 
   177         for ff in fl.files():
   181         for ff in fl.files():
   178             try:
   182             try:
   179                 del storefiles[ff]
   183                 del storefiles[ff]
   180             except KeyError:
   184             except KeyError: