equal
deleted
inserted
replaced
92 |
92 |
93 If includepath is True, return (<roots>::<heads>).""" |
93 If includepath is True, return (<roots>::<heads>).""" |
94 if not roots: |
94 if not roots: |
95 return baseset() |
95 return baseset() |
96 parentrevs = repo.changelog.parentrevs |
96 parentrevs = repo.changelog.parentrevs |
|
97 roots = set(roots) |
97 visit = list(heads) |
98 visit = list(heads) |
98 reachable = set() |
99 reachable = set() |
99 seen = {} |
100 seen = {} |
100 # prefetch all the things! (because python is slow) |
101 # prefetch all the things! (because python is slow) |
101 reached = reachable.add |
102 reached = reachable.add |
131 if not roots: |
132 if not roots: |
132 return baseset() |
133 return baseset() |
133 # XXX this should be 'parentset.min()' assuming 'parentset' is a smartset |
134 # XXX this should be 'parentset.min()' assuming 'parentset' is a smartset |
134 # (and if it is not, it should.) |
135 # (and if it is not, it should.) |
135 minroot = min(roots) |
136 minroot = min(roots) |
136 roots = set(roots) |
137 roots = list(roots) |
137 heads = list(heads) |
138 heads = list(heads) |
138 try: |
139 try: |
139 return repo.changelog.reachableroots(minroot, heads, roots, includepath) |
140 return repo.changelog.reachableroots(minroot, heads, roots, includepath) |
140 except AttributeError: |
141 except AttributeError: |
141 return reachablerootspure(repo, minroot, roots, heads, includepath) |
142 return reachablerootspure(repo, minroot, roots, heads, includepath) |