[PATCH FIX-default] pushrace: avoid crash on bare push when using concurrent push mode
Yuya Nishihara
yuya at tcha.org
Thu Jun 29 10:15:08 EDT 2017
On Thu, 29 Jun 2017 23:05:45 +0900, Yuya Nishihara wrote:
> On Thu, 29 Jun 2017 16:03:15 +0200, Pierre-Yves David wrote:
> > On 06/29/2017 04:01 PM, Yuya Nishihara wrote:
> > > On Wed, 28 Jun 2017 18:21:41 +0200, Pierre-Yves David wrote:
> > >> # HG changeset patch
> > >> # User Pierre-Yves David <pierre-yves.david at octobus.net>
> > >> # Date 1498664485 -7200
> > >> # Wed Jun 28 17:41:25 2017 +0200
> > >> # Node ID c6954352fa654efd0627e2024100f7bc59f5028f
> > >> # Parent 6fdc1518983ed9ed94f83f803bb787adaf92c11b
> > >> # EXP-Topic pushrace
> > >> # Available At https://www.mercurial-scm.org/repo/users/marmoute/mercurial/
> > >> # hg pull https://www.mercurial-scm.org/repo/users/marmoute/mercurial/ -r c6954352fa65
> > >> pushrace: avoid crash on bare push when using concurrent push mode
> > >>
> > >> If the remote is empty, we do now bother computing head changes and the
> > >> 'pushbranchmap' attribute stays at None.
> > >>
> > >> We now handle and tests this case.
> > >>
> > >> diff --git a/mercurial/exchange.py b/mercurial/exchange.py
> > >> --- a/mercurial/exchange.py
> > >> +++ b/mercurial/exchange.py
> > >> @@ -730,9 +730,10 @@ def _pushb2ctxcheckheads(pushop, bundler
> > >> # * if we don't push anything, there are nothing to check.
> > >> if not pushop.force and pushop.outgoing.missingheads:
> > >> allowunrelated = 'related' in bundler.capabilities.get('checkheads', ())
> > >> - if not allowunrelated:
> > >> + emptyremote = pushop.pushbranchmap is None
> > >> + if not allowunrelated or emptyremote:
> > >> bundler.newpart('check:heads', data=iter(pushop.remoteheads))
> > >> - else:
> > >> + elif pushop.pushbranchmap is not None:
> > >
> > > Perhaps this can be just "else:" ?
> >
> > A right, that should be 'else:' can you fix it in flight?
>
> Sure, will do.
And queued.
More information about the Mercurial-devel
mailing list