# HG changeset patch # User Gregory Szorc # Date 2018-08-04 01:31:00 # Node ID 6d726d1b08cb4cccc43e1647139205f48e9242cd # Parent d2ab0db894650302c2df247137699543b360455c 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 diff --git a/mercurial/changegroup.py b/mercurial/changegroup.py --- a/mercurial/changegroup.py +++ b/mercurial/changegroup.py @@ -607,7 +607,6 @@ class cgpacker(object): if self._nextclrevtolocalrev is not None: self._clrevtolocalrev = self._nextclrevtolocalrev self._nextclrevtolocalrev = None - self._changelogdone = True return closechunk() @@ -730,6 +729,8 @@ class cgpacker(object): self._verbosenote(_('%8.i (changelog)\n') % size) + self._changelogdone = True + clrevorder = clstate['clrevorder'] mfs = clstate['mfs'] changedfiles = clstate['changedfiles']