Show More
@@ -1922,10 +1922,17 b' def _list(repo, subset, x):' | |||
|
1922 | 1922 | return baseset() |
|
1923 | 1923 | # remove duplicates here. it's difficult for caller to deduplicate sets |
|
1924 | 1924 | # because different symbols can point to the same rev. |
|
1925 | cl = repo.changelog | |
|
1925 | 1926 | ls = [] |
|
1926 | 1927 | seen = set() |
|
1927 | 1928 | for t in s.split('\0'): |
|
1928 | r = repo[t].rev() | |
|
1929 | try: | |
|
1930 | # fast path for integer revision | |
|
1931 | r = int(t) | |
|
1932 | if str(r) != t or r not in cl: | |
|
1933 | raise ValueError | |
|
1934 | except ValueError: | |
|
1935 | r = repo[t].rev() | |
|
1929 | 1936 | if r in seen: |
|
1930 | 1937 | continue |
|
1931 | 1938 | if (r in subset |
@@ -1011,6 +1011,26 b' test unknown revision in `_list`' | |||
|
1011 | 1011 | abort: unknown revision 'unknown'! |
|
1012 | 1012 | [255] |
|
1013 | 1013 | |
|
1014 | test integer range in `_list` | |
|
1015 | ||
|
1016 | $ log '-1|-10' | |
|
1017 | 9 | |
|
1018 | 0 | |
|
1019 | ||
|
1020 | $ log '-10|-11' | |
|
1021 | abort: unknown revision '-11'! | |
|
1022 | [255] | |
|
1023 | ||
|
1024 | $ log '9|10' | |
|
1025 | abort: unknown revision '10'! | |
|
1026 | [255] | |
|
1027 | ||
|
1028 | test '0000' != '0' in `_list` | |
|
1029 | ||
|
1030 | $ log '0|0000' | |
|
1031 | 0 | |
|
1032 | -1 | |
|
1033 | ||
|
1014 | 1034 | test that chained `or` operations make balanced addsets |
|
1015 | 1035 | |
|
1016 | 1036 | $ try '0:1|1:2|2:3|3:4|4:5' |
General Comments 0
You need to be logged in to leave comments.
Login now