glob: match explicitly-named dotfiles and resolve literal paths through symlinks - #32853
Merged
Jarred-Sumner merged 8 commits intoJun 28, 2026
Merged
Claude / Claude Code Review
completed
Jun 27, 2026 in 37m 47s
Code review found 1 important issue
Found 1 candidates, confirmed 1. See review comments for details.
Details
| Severity | Count |
|---|---|
| 🔴 Important | 1 |
| 🟡 Nit | 0 |
| 🟣 Pre-existing | 0 |
| Severity | File:Line | Issue |
|---|---|---|
| 🔴 Important | src/glob/GlobWalker.rs:1048-1056 |
eval_impl pre-filter blocks **/.dotdir/... fix for SymLink and Unknown entries |
Annotations
Check failure on line 1056 in src/glob/GlobWalker.rs
claude / Claude Code Review
eval_impl pre-filter blocks **/.dotdir/... fix for SymLink and Unknown entries
The `**/.dotdir/...` fix only works when readdir reports `DT_DIR`: the `SymLink` arm (with `followSymlinks:true`) and the `Unknown` arm both gate on `eval_impl(&active, entry_name)` before reaching `eval_dir`, and `eval_impl` never peeks past `**`, so for active={`**`} and entry `.dotdir` it returns `false` and the entry is skipped. Result: `new Glob("**/.dotdir/inner.txt").scan({followSymlinks:true})` finds the file when `.dotdir` is a real directory but returns `[]` when `.dotdir` is a symlink
Loading