Mercurial > hg
comparison mercurial/changegroup.py @ 38979:6d726d1b08cb
changegroup: record changelogdone after fully consuming its data
Setting this as a side-effect of calling _close() is wonky. There's
only one group for changelog data. So we can wait until after all
data has been emitted before recording it.
Differential Revision: https://phab.mercurial-scm.org/D4136
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Fri, 03 Aug 2018 18:31:00 -0700 |
parents | d2ab0db89465 |
children | 4a202bccafcf |
comparison
equal
deleted
inserted
replaced
38978:d2ab0db89465 | 38979:6d726d1b08cb |
---|---|
605 # Ellipses serving mode. | 605 # Ellipses serving mode. |
606 self._clrevtolocalrev.clear() | 606 self._clrevtolocalrev.clear() |
607 if self._nextclrevtolocalrev is not None: | 607 if self._nextclrevtolocalrev is not None: |
608 self._clrevtolocalrev = self._nextclrevtolocalrev | 608 self._clrevtolocalrev = self._nextclrevtolocalrev |
609 self._nextclrevtolocalrev = None | 609 self._nextclrevtolocalrev = None |
610 self._changelogdone = True | |
611 | 610 |
612 return closechunk() | 611 return closechunk() |
613 | 612 |
614 def _fileheader(self, fname): | 613 def _fileheader(self, fname): |
615 return chunkheader(len(fname)) + fname | 614 return chunkheader(len(fname)) + fname |
727 for chunk in chunks: | 726 for chunk in chunks: |
728 size += len(chunk) | 727 size += len(chunk) |
729 yield chunk | 728 yield chunk |
730 | 729 |
731 self._verbosenote(_('%8.i (changelog)\n') % size) | 730 self._verbosenote(_('%8.i (changelog)\n') % size) |
731 | |
732 self._changelogdone = True | |
732 | 733 |
733 clrevorder = clstate['clrevorder'] | 734 clrevorder = clstate['clrevorder'] |
734 mfs = clstate['mfs'] | 735 mfs = clstate['mfs'] |
735 changedfiles = clstate['changedfiles'] | 736 changedfiles = clstate['changedfiles'] |
736 | 737 |