mercurial/localrepo.py
branchstable
changeset 27102 f97bb61b51e6
parent 26831 0a7610758c42
child 27278 42aa0e570eaa
--- a/mercurial/localrepo.py	Sun Nov 15 22:18:48 2015 +0100
+++ b/mercurial/localrepo.py	Mon Nov 30 16:31:28 2015 -0800
@@ -1556,19 +1556,12 @@
             if merge and cctx.deleted():
                 raise error.Abort(_("cannot commit merge with missing files"))
 
-            unresolved, driverresolved = False, False
             ms = mergemod.mergestate(self)
-            for f in status.modified:
-                if f in ms:
-                    if ms[f] == 'u':
-                        unresolved = True
-                    elif ms[f] == 'd':
-                        driverresolved = True
 
-            if unresolved:
+            if list(ms.unresolved()):
                 raise error.Abort(_('unresolved merge conflicts '
                                     '(see "hg help resolve")'))
-            if driverresolved or ms.mdstate() != 's':
+            if ms.mdstate() != 's' or list(ms.driverresolved()):
                 raise error.Abort(_('driver-resolved merge conflicts'),
                                   hint=_('run "hg resolve --all" to resolve'))