mercurial/changelog.py
changeset 47426 cac0e0621ceb
parent 47425 e0a314bcbc9d
child 48875 6000f5b25c9b
equal deleted inserted replaced
47425:e0a314bcbc9d 47426:cac0e0621ceb
   453                 self._delaybuf = []
   453                 self._delaybuf = []
   454                 self.opener = _delayopener(
   454                 self.opener = _delayopener(
   455                     self._realopener, self._indexfile, self._delaybuf
   455                     self._realopener, self._indexfile, self._delaybuf
   456                 )
   456                 )
   457             self._segmentfile.opener = self.opener
   457             self._segmentfile.opener = self.opener
       
   458             self._segmentfile_sidedata.opener = self.opener
   458         self._delayed = True
   459         self._delayed = True
   459         tr.addpending(b'cl-%i' % id(self), self._writepending)
   460         tr.addpending(b'cl-%i' % id(self), self._writepending)
   460         tr.addfinalize(b'cl-%i' % id(self), self._finalize)
   461         tr.addfinalize(b'cl-%i' % id(self), self._finalize)
   461 
   462 
   462     def _finalize(self, tr):
   463     def _finalize(self, tr):
   463         """finalize index updates"""
   464         """finalize index updates"""
   464         self._delayed = False
   465         self._delayed = False
   465         self.opener = self._realopener
   466         self.opener = self._realopener
   466         self._segmentfile.opener = self.opener
   467         self._segmentfile.opener = self.opener
       
   468         self._segmentfile_sidedata.opener = self.opener
   467         # move redirected index data back into place
   469         # move redirected index data back into place
   468         if self._docket is not None:
   470         if self._docket is not None:
   469             self._write_docket(tr)
   471             self._write_docket(tr)
   470         elif self._divert:
   472         elif self._divert:
   471             assert not self._delaybuf
   473             assert not self._delaybuf
   502             # switch modes so finalize can simply rename
   504             # switch modes so finalize can simply rename
   503             self._delaybuf = None
   505             self._delaybuf = None
   504             self._divert = True
   506             self._divert = True
   505             self.opener = _divertopener(self._realopener, self._indexfile)
   507             self.opener = _divertopener(self._realopener, self._indexfile)
   506             self._segmentfile.opener = self.opener
   508             self._segmentfile.opener = self.opener
       
   509             self._segmentfile_sidedata.opener = self.opener
   507 
   510 
   508         if self._divert:
   511         if self._divert:
   509             return True
   512             return True
   510 
   513 
   511         return False
   514         return False