diff options
Diffstat (limited to 'pkgs/build-support/setup-hooks/patch-shebangs.sh')
-rw-r--r-- | pkgs/build-support/setup-hooks/patch-shebangs.sh | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/pkgs/build-support/setup-hooks/patch-shebangs.sh b/pkgs/build-support/setup-hooks/patch-shebangs.sh index d5586fccae67..d26bf735d30a 100644 --- a/pkgs/build-support/setup-hooks/patch-shebangs.sh +++ b/pkgs/build-support/setup-hooks/patch-shebangs.sh @@ -18,11 +18,11 @@ patchShebangs() { local oldInterpreterLine local newInterpreterLine - find "$dir" -type f -perm -0100 | while read f; do - if [ "$(head -1 "$f" | head -c+2)" != '#!' ]; then - # missing shebang => not a script - continue - fi + [ -e "$dir" ] || return 0 + + local f + while IFS= read -r -d $'\0' f; do + isScript "$f" || continue oldInterpreterLine=$(head -1 "$f" | tail -c+3) read -r oldPath arg0 args <<< "$oldInterpreterLine" @@ -61,7 +61,7 @@ patchShebangs() { rm "$f.timestamp" fi fi - done + done < <(find "$dir" -type f -perm -0100 -print0) stopNest } |