diff -r f9f82c444ff7 -r a5ff66e6d77a mercurial/merge.py --- a/mercurial/merge.py Sun Oct 11 20:04:40 2015 -0700 +++ b/mercurial/merge.py Sun Oct 11 20:47:14 2015 -0700 @@ -310,8 +310,11 @@ f = self._repo.vfs('merge/' + hash) self._repo.wwrite(dfile, f.read(), flags) f.close() - complete, r = filemerge.filemerge(self._repo, self._local, lfile, fcd, - fco, fca, labels=labels) + complete, r = filemerge.premerge(self._repo, self._local, lfile, fcd, + fco, fca, labels=labels) + if not complete: + complete, r = filemerge.filemerge(self._repo, self._local, lfile, + fcd, fco, fca, labels=labels) if r is None: # no real conflict del self._state[dfile]