mercurial/verify.py
changeset 17851 7aa7380691b8
parent 17720 9a1796af4f8d
child 17860 a45b33f12627
equal deleted inserted replaced
17796:1b51638bf44a 17851:7aa7380691b8
     5 # This software may be used and distributed according to the terms of the
     5 # This software may be used and distributed according to the terms of the
     6 # GNU General Public License version 2 or any later version.
     6 # GNU General Public License version 2 or any later version.
     7 
     7 
     8 from node import nullid, short
     8 from node import nullid, short
     9 from i18n import _
     9 from i18n import _
    10 import os
    10 import os, posixpath
    11 import revlog, util, error
    11 import revlog, util, error
    12 
    12 
    13 def verify(repo):
    13 def verify(repo):
    14     lock = repo.lock()
    14     lock = repo.lock()
    15     try:
    15     try:
   234 
   234 
   235         for ff in fl.files():
   235         for ff in fl.files():
   236             try:
   236             try:
   237                 storefiles.remove(ff)
   237                 storefiles.remove(ff)
   238             except KeyError:
   238             except KeyError:
   239                 err(lr, _("missing revlog!"), ff)
   239                 # under hg < 2.4, convert didn't sanitize paths properly,
       
   240                 # so a converted repo may contain repeated slashes
       
   241                 try:
       
   242                     storefiles.remove(posixpath.normpath(ff))
       
   243                 except KeyError:
       
   244                     err(lr, _("missing revlog!"), ff)
   240 
   245 
   241         checklog(fl, f, lr)
   246         checklog(fl, f, lr)
   242         seen = {}
   247         seen = {}
   243         rp = None
   248         rp = None
   244         for i in fl:
   249         for i in fl: