diff hgext/evolve.py @ 550:362e65fc6146 stable

evolve-cmd: fix merge error detection for external tools.
author Pierre-Yves David <pierre-yves.david@logilab.fr>
date Tue, 11 Sep 2012 11:45:00 +0200
parents b047e9417d96
children 38fbcc760ec6
line wrap: on
line diff
--- a/hgext/evolve.py	Mon Sep 10 18:56:44 2012 +0200
+++ b/hgext/evolve.py	Tue Sep 11 11:45:00 2012 +0200
@@ -1232,15 +1232,18 @@
         cmdutil.duplicatecopies(repo, orig.node(), dest.node())
         nodesrc = orig.node()
         destphase = repo[nodesrc].phase()
-        if rebase.rebasenode.func_code.co_argcount == 5:
-            # rebasenode collapse argument was introduced by
-            # d1afbf03e69a (2.3)
-            rebase.rebasenode(repo, orig.node(), dest.node(),
-                              {node.nullrev: node.nullrev}, False)
-        else:
-            rebase.rebasenode(repo, orig.node(), dest.node(),
-                              {node.nullrev: node.nullrev})
         try:
+            if rebase.rebasenode.func_code.co_argcount == 5:
+                # rebasenode collapse argument was introduced by
+                # d1afbf03e69a (2.3)
+                r = rebase.rebasenode(repo, orig.node(), dest.node(),
+                                      {node.nullrev: node.nullrev}, False)
+            else:
+                r = rebase.rebasenode(repo, orig.node(), dest.node(),
+                                     {node.nullrev: node.nullrev})
+            if r[-1]: #some conflict
+                raise util.Abort(
+                        'unresolved merge conflicts (see hg help resolve)')
             nodenew = rebase.concludenode(repo, orig.node(), dest.node(),
                                           node.nullid)
         except util.Abort, exc: