Mercurial > public > mercurial-scm > evolve
diff hgext/evolve.py @ 1354:b4a62d6f0353
evolve: don't crash on singled out revisions
Before this patch, we were crashing on unsolvable revisions when using
evolve --rev. This patch removes the crash and prints a warning when we
encounter such revision.
author | Laurent Charignon <lcharignon@fb.com> |
---|---|
date | Mon, 01 Jun 2015 12:29:12 -0700 |
parents | 69e5de3e6129 |
children | 3bb7a080da4d |
line wrap: on
line diff
--- a/hgext/evolve.py Mon Jun 01 10:58:50 2015 -0700 +++ b/hgext/evolve.py Mon Jun 01 12:29:12 2015 -0700 @@ -1398,9 +1398,12 @@ progresscb=None): """Stabilize a unstable changeset""" obs = orig.parents()[0] - if not obs.obsolete(): + if not obs.obsolete() and len(orig.parents()) == 2: obs = orig.parents()[1] # second parent is obsolete ? - assert obs.obsolete() + + if not obs.obsolete(): + ui.warn("cannot solve instability of %s, skipping\n" % orig) + return False newer = obsolete.successorssets(repo, obs.node()) # search of a parent which is not killed while not newer or newer == [()]: