comparison mercurial/branchmap.py @ 39174:dd1614906a20

branchmap: close cache file properly Follows up 2a4bfbb52111.
author Yuya Nishihara <yuya@tcha.org>
date Fri, 17 Aug 2018 10:25:39 +0900
parents b892df0766e1
children 8547c8590ac1
comparison
equal deleted inserted replaced
39173:b892df0766e1 39174:dd1614906a20
36 if repo.filtername: 36 if repo.filtername:
37 filename = '%s-%s' % (filename, repo.filtername) 37 filename = '%s-%s' % (filename, repo.filtername)
38 return filename 38 return filename
39 39
40 def read(repo): 40 def read(repo):
41 f = None
41 try: 42 try:
42 f = repo.cachevfs(_filename(repo)) 43 f = repo.cachevfs(_filename(repo))
43 cachekey = next(f).rstrip('\n').split(" ", 2) 44 cachekey = next(f).rstrip('\n').split(" ", 2)
44 last, lrev = cachekey[:2] 45 last, lrev = cachekey[:2]
45 last, lrev = bin(last), int(lrev) 46 last, lrev = bin(last), int(lrev)
77 if repo.filtername is not None: 78 if repo.filtername is not None:
78 msg += ' (%s)' % repo.filtername 79 msg += ' (%s)' % repo.filtername
79 msg += ': %s\n' 80 msg += ': %s\n'
80 repo.ui.debug(msg % pycompat.bytestr(inst)) 81 repo.ui.debug(msg % pycompat.bytestr(inst))
81 partial = None 82 partial = None
83
84 finally:
85 if f:
86 f.close()
87
82 return partial 88 return partial
83 89
84 ### Nearest subset relation 90 ### Nearest subset relation
85 # Nearest subset of filter X is a filter Y so that: 91 # Nearest subset of filter X is a filter Y so that:
86 # * Y is included in X, 92 # * Y is included in X,