mercurial/revset.py
changeset 30699 5bda147c3139
parent 30392 155d7ea98085
child 30700 323f0c4b43f4
--- a/mercurial/revset.py	Wed Jan 04 19:17:44 2017 -0800
+++ b/mercurial/revset.py	Sat May 23 11:04:11 2015 +0900
@@ -723,12 +723,15 @@
     cs = set()
     pr = repo.changelog.parentrevs
     minrev = parentset.min()
+    nullrev = node.nullrev
     for r in subset:
         if r <= minrev:
             continue
-        for p in pr(r):
-            if p in parentset:
-                cs.add(r)
+        p1, p2 = pr(r)
+        if p1 in parentset:
+            cs.add(r)
+        if p2 != nullrev and p2 in parentset:
+            cs.add(r)
     return baseset(cs)
 
 @predicate('children(set)', safe=True)