diff mercurial/revset.py @ 24202:2de9ee016425

revset: have all() filter out null revision I'm not sure if "all()" should filter out "null", but "all()" is stated as 'the same as "0:tip"' (except that it doesn't reorder the subset, I think.) This patch is intended to avoid exposing a fullreposet to graphmod.dagwalker(), which would result in strange drawing in future version: | o changeset: 0:f8035bb17114 | user: test | date: Thu Jan 01 00:00:00 1970 +0000 | summary: add a caused by: parents = sorted(set([p.rev() for p in ctx.parents() if p.rev() in revs])) We cannot add "and p.rev() != nullrev" here because revs may actually include "null" revision.
author Yuya Nishihara <yuya@tcha.org>
date Sat, 10 Jan 2015 14:49:50 +0900
parents 77ef059b3317
children 33c7a94d4dd0
line wrap: on
line diff
--- a/mercurial/revset.py	Sat Jan 10 16:41:36 2015 +0900
+++ b/mercurial/revset.py	Sat Jan 10 14:49:50 2015 +0900
@@ -994,7 +994,7 @@
     """
     # i18n: "all" is a keyword
     getargs(x, 0, 0, _("all takes no arguments"))
-    return subset
+    return subset & spanset(repo)  # drop "null" if any
 
 def grep(repo, subset, x):
     """``grep(regex)``