mercurial/revlog.py
changeset 41286 00b314c42094
parent 41275 1421d0487a61
child 41301 13c23396c7fe
equal deleted inserted replaced
41285:cf8677cd7286 41286:00b314c42094
   438         self._initempty = True
   438         self._initempty = True
   439         try:
   439         try:
   440             with self._indexfp() as f:
   440             with self._indexfp() as f:
   441                 if (mmapindexthreshold is not None and
   441                 if (mmapindexthreshold is not None and
   442                     self.opener.fstat(f).st_size >= mmapindexthreshold):
   442                     self.opener.fstat(f).st_size >= mmapindexthreshold):
       
   443                     # TODO: should .close() to release resources without
       
   444                     # relying on Python GC
   443                     indexdata = util.buffer(util.mmapread(f))
   445                     indexdata = util.buffer(util.mmapread(f))
   444                 else:
   446                 else:
   445                     indexdata = f.read()
   447                     indexdata = f.read()
   446             if len(indexdata) > 0:
   448             if len(indexdata) > 0:
   447                 versionflags = versionformat_unpack(indexdata[:4])[0]
   449                 versionflags = versionformat_unpack(indexdata[:4])[0]