Show More
@@ -571,6 +571,14 b' def _descendants(repo, subset, x, follow' | |||||
571 | if not args: |
|
571 | if not args: | |
572 | return [] |
|
572 | return [] | |
573 | s = set(_revdescendants(repo, args, followfirst)) | set(args) |
|
573 | s = set(_revdescendants(repo, args, followfirst)) | set(args) | |
|
574 | ||||
|
575 | if len(subset) == len(repo): | |||
|
576 | # the passed in revisions may not exist, -1 for example | |||
|
577 | for arg in args: | |||
|
578 | if arg not in subset: | |||
|
579 | s.remove(arg) | |||
|
580 | return list(s) | |||
|
581 | ||||
574 | return [r for r in subset if r in s] |
|
582 | return [r for r in subset if r in s] | |
575 |
|
583 | |||
576 | def descendants(repo, subset, x): |
|
584 | def descendants(repo, subset, x): | |
@@ -1328,7 +1336,10 b' def roots(repo, subset, x):' | |||||
1328 | Changesets in set with no parent changeset in set. |
|
1336 | Changesets in set with no parent changeset in set. | |
1329 | """ |
|
1337 | """ | |
1330 | s = set(getset(repo, repo.changelog, x)) |
|
1338 | s = set(getset(repo, repo.changelog, x)) | |
1331 | subset = [r for r in subset if r in s] |
|
1339 | if len(subset) == len(repo): | |
|
1340 | subset = s | |||
|
1341 | else: | |||
|
1342 | subset = [r for r in subset if r in s] | |||
1332 | cs = _children(repo, subset, s) |
|
1343 | cs = _children(repo, subset, s) | |
1333 | return [r for r in subset if r not in cs] |
|
1344 | return [r for r in subset if r not in cs] | |
1334 |
|
1345 |
General Comments 0
You need to be logged in to leave comments.
Login now