comparison mercurial/branchmap.py @ 31371:7dd2f51f38ac

rbc: empty (and invalid) rbc-names file should give an empty name list An empty file (if it somehow should exist) used to give a list with an empty name. That didn't do any harm, but it was "wrong". Fix that.
author Mads Kiilerich <mads@kiilerich.com>
date Sun, 12 Mar 2017 12:17:30 -0700
parents 906be86990c4
children 7359157b9e46
comparison
equal deleted inserted replaced
31370:906be86990c4 31371:7dd2f51f38ac
358 self._rbcrevs = bytearray() 358 self._rbcrevs = bytearray()
359 self._rbcsnameslen = 0 # length of names read at _rbcsnameslen 359 self._rbcsnameslen = 0 # length of names read at _rbcsnameslen
360 try: 360 try:
361 bndata = repo.vfs.read(_rbcnames) 361 bndata = repo.vfs.read(_rbcnames)
362 self._rbcsnameslen = len(bndata) # for verification before writing 362 self._rbcsnameslen = len(bndata) # for verification before writing
363 self._names = [encoding.tolocal(bn) for bn in bndata.split('\0')] 363 if bndata:
364 self._names = [encoding.tolocal(bn)
365 for bn in bndata.split('\0')]
364 except (IOError, OSError): 366 except (IOError, OSError):
365 if readonly: 367 if readonly:
366 # don't try to use cache - fall back to the slow path 368 # don't try to use cache - fall back to the slow path
367 self.branchinfo = self._branchinfo 369 self.branchinfo = self._branchinfo
368 370