Details
Details
- Reviewers
durin42 - Group Reviewers
hg-reviewers - Commits
- rHGddd9474d2e08: walkrepos: don't reimplement any()
Diff Detail
Diff Detail
- Repository
- rHG Mercurial
- Lint
Lint Skipped - Unit
Unit Tests Skipped
| durin42 |
| hg-reviewers |
| Lint Skipped |
| Unit Tests Skipped |
| Path | Packages | |||
|---|---|---|---|---|
| M | mercurial/scmutil.py (6 lines) |
| Status | Author | Revision | |
|---|---|---|---|
| Closed | martinvonz | ||
| Closed | martinvonz | ||
| Closed | martinvonz | ||
| Closed | martinvonz | ||
| Closed | martinvonz | ||
| Closed | martinvonz |
| '''yield every hg repository under path, always recursively. | '''yield every hg repository under path, always recursively. | ||||
| The recurse flag will only control recursion into repo working dirs''' | The recurse flag will only control recursion into repo working dirs''' | ||||
| def errhandler(err): | def errhandler(err): | ||||
| if err.filename == path: | if err.filename == path: | ||||
| raise err | raise err | ||||
| samestat = getattr(os.path, 'samestat', None) | samestat = getattr(os.path, 'samestat', None) | ||||
| if followsym and samestat is not None: | if followsym and samestat is not None: | ||||
| def adddir(dirlst, dirname): | def adddir(dirlst, dirname): | ||||
| match = False | |||||
| dirstat = os.stat(dirname) | dirstat = os.stat(dirname) | ||||
| for lstdirstat in dirlst: | match = any(samestat(dirstat, lstdirstat) for lstdirstat in dirlst) | ||||
| if samestat(dirstat, lstdirstat): | |||||
| match = True | |||||
| break | |||||
| if not match: | if not match: | ||||
| dirlst.append(dirstat) | dirlst.append(dirstat) | ||||
| return not match | return not match | ||||
| else: | else: | ||||
| followsym = False | followsym = False | ||||
| if (seen_dirs is None) and followsym: | if (seen_dirs is None) and followsym: | ||||
| seen_dirs = [] | seen_dirs = [] | ||||