##// END OF EJS Templates
revset: make internal _list() expression remove duplicated revisions...
Yuya Nishihara -
r25341:9d6cc87b default
parent child Browse files
Show More
@@ -1920,9 +1920,18 b' def _list(repo, subset, x):'
1920 s = getstring(x, "internal error")
1920 s = getstring(x, "internal error")
1921 if not s:
1921 if not s:
1922 return baseset()
1922 return baseset()
1923 ls = [repo[r].rev() for r in s.split('\0')]
1923 # remove duplicates here. it's difficult for caller to deduplicate sets
1924 s = subset
1924 # because different symbols can point to the same rev.
1925 return baseset([r for r in ls if r in s])
1925 ls = []
1926 seen = set()
1927 for t in s.split('\0'):
1928 r = repo[t].rev()
1929 if r in seen:
1930 continue
1931 if r in subset:
1932 ls.append(r)
1933 seen.add(r)
1934 return baseset(ls)
1926
1935
1927 # for internal use
1936 # for internal use
1928 def _intlist(repo, subset, x):
1937 def _intlist(repo, subset, x):
General Comments 0
You need to be logged in to leave comments. Login now