mercurial/streamclone.py
changeset 8531 810387f59696
parent 8225 46293a0c7e9f
child 8761 0289f384e1e5
equal deleted inserted replaced
8530:03196ac9a8b9 8531:810387f59696
     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, incorporated herein by reference.
     6 # GNU General Public License version 2, incorporated herein by reference.
     7 
     7 
     8 import util, error
     8 import util, error
     9 from i18n import _
     9 from i18n import _
       
    10 
       
    11 from mercurial import store
    10 
    12 
    11 class StreamException(Exception):
    13 class StreamException(Exception):
    12     def __init__(self, code):
    14     def __init__(self, code):
    13         Exception.__init__(self)
    15         Exception.__init__(self)
    14         self.code = code
    16         self.code = code
    44         # get consistent snapshot of repo, lock during scan
    46         # get consistent snapshot of repo, lock during scan
    45         lock = repo.lock()
    47         lock = repo.lock()
    46         try:
    48         try:
    47             repo.ui.debug(_('scanning\n'))
    49             repo.ui.debug(_('scanning\n'))
    48             for name, ename, size in repo.store.walk():
    50             for name, ename, size in repo.store.walk():
    49                 entries.append((name, size))
    51                 # for backwards compat, name was partially encoded
       
    52                 entries.append((store.encodedir(name), size))
    50                 total_bytes += size
    53                 total_bytes += size
    51         finally:
    54         finally:
    52             lock.release()
    55             lock.release()
    53     except error.LockError:
    56     except error.LockError:
    54         raise StreamException(2)
    57         raise StreamException(2)