mirror of
https://github.com/nvm-sh/nvm.git
synced 2026-10-24 23:33:43 +08:00
[Perf] Optimize nvm_tree_contains_path with in-memory POSIX parent-walk
Replace looping subshell process forks (dirname) in nvm_tree_contains_path with case-guarded in-memory POSIX parameter expansion () and exact string equality comparisons. Ensures literal string matching for glob metacharacters (*, ?, []) and full zsh compatibility across all platforms.
This commit is contained in:
committed by
Jordan Harband
parent
e361b93e4b
commit
cd84623ab2
@@ -29,4 +29,11 @@ nvm_tree_contains_path tmp2 tmp2/node || die '"tmp2" should contain "tmp2/node"'
|
||||
|
||||
nvm_tree_contains_path tmp2 tmp/node && die '"tmp2" should not contain "tmp/node"'
|
||||
|
||||
nvm_tree_contains_path tmp/ tmp/node || die '"tmp/" should contain "tmp/node"'
|
||||
nvm_tree_contains_path tmp// tmp/node || die '"tmp//" should contain "tmp/node"'
|
||||
nvm_tree_contains_path / /tmp/node || die '"/" should contain "/tmp/node"'
|
||||
|
||||
nvm_tree_contains_path "tmp[glob]" "tmp[glob]/node" || die '"tmp[glob]" should contain "tmp[glob]/node"'
|
||||
nvm_tree_contains_path "tmp" "tmp[glob]/node" && die '"tmp" should not contain "tmp[glob]/node"'
|
||||
|
||||
cleanup
|
||||
|
||||
Reference in New Issue
Block a user