mercurial/revset.py
changeset 38483 72621094505f
parent 38287 f1d55ae2c5c8
child 38492 b23ef2f06d98
--- a/mercurial/revset.py	Wed Jun 27 23:33:57 2018 +0900
+++ b/mercurial/revset.py	Wed Jun 27 23:39:41 2018 +0900
@@ -1129,11 +1129,14 @@
         hs.update(cl.rev(h) for h in ls)
     return subset & baseset(hs)
 
-@predicate('heads(set)', safe=True)
-def heads(repo, subset, x):
+@predicate('heads(set)', safe=True, takeorder=True)
+def heads(repo, subset, x, order):
     """Members of set with no children in set.
     """
-    s = getset(repo, subset, x)
+    # argument set should never define order
+    if order == defineorder:
+        order = followorder
+    s = getset(repo, subset, x, order=order)
     ps = parents(repo, subset, x)
     return s - ps