mercurial/revset.py
changeset 42441 43c8f72184f4
parent 42440 d279e4f453c4
child 42699 911e25dc9d8c
--- a/mercurial/revset.py	Sun Jun 09 22:18:22 2019 +0900
+++ b/mercurial/revset.py	Sun Jun 09 22:23:41 2019 +0900
@@ -1362,8 +1362,12 @@
     getargs(x, 0, 0, _("merge takes no arguments"))
     cl = repo.changelog
     nullrev = node.nullrev
-    return subset.filter(lambda r: cl.parentrevs(r)[1] != nullrev,
-                         condrepr='<merge>')
+    def ismerge(r):
+        try:
+            return cl.parentrevs(r)[1] != nullrev
+        except error.WdirUnsupported:
+            return bool(repo[r].p2())
+    return subset.filter(ismerge, condrepr='<merge>')
 
 @predicate('branchpoint()', safe=True)
 def branchpoint(repo, subset, x):