equal
deleted
inserted
replaced
294 """raise the appropriate error if 'revs' contains a filtered revision |
294 """raise the appropriate error if 'revs' contains a filtered revision |
295 |
295 |
296 This returns a version of 'revs' to be used thereafter by the caller. |
296 This returns a version of 'revs' to be used thereafter by the caller. |
297 In particular, if revs is an iterator, it is converted into a set. |
297 In particular, if revs is an iterator, it is converted into a set. |
298 """ |
298 """ |
299 safehasattr = util.safehasattr |
299 if hasattr(revs, '__next__'): |
300 if safehasattr(revs, '__next__'): |
|
301 # Note that inspect.isgenerator() is not true for iterators, |
300 # Note that inspect.isgenerator() is not true for iterators, |
302 revs = set(revs) |
301 revs = set(revs) |
303 |
302 |
304 filteredrevs = self.filteredrevs |
303 filteredrevs = self.filteredrevs |
305 if safehasattr(revs, 'first'): # smartset |
304 if hasattr(revs, 'first'): # smartset |
306 offenders = revs & filteredrevs |
305 offenders = revs & filteredrevs |
307 else: |
306 else: |
308 offenders = filteredrevs.intersection(revs) |
307 offenders = filteredrevs.intersection(revs) |
309 |
308 |
310 for rev in offenders: |
309 for rev in offenders: |