8bad3116c0
In bash, strings cannot contain NUL bytes, so `$'\0'` expands to the empty string. The pattern `*$'\0'*` collapsed to `**`, which matches every non-empty value, so `validate_path` aborted on every real path with "Path contains control chars". - Drop the NUL check entirely (impossible to violate by construction). - Use a single case statement for the newline and traversal checks; more predictable than chained [[ ... && ... ]] glob comparisons on bash 3.2. Verified: paths with spaces, dots in basenames (~/.config, ~/.local), and the iCloud bundle directory all pass; empty paths, "..", and embedded newlines still reject. Repro before fix: $ ./install.sh [ERR] Path contains control chars Co-authored-by: Cursor <cursoragent@cursor.com>