···72 while IFS= read -r -d $'\0' f; do
73 isScript "$f" || continue
7475- read -r oldInterpreterLine < "$f"
00076 read -r oldPath arg0 args <<< "${oldInterpreterLine:2}"
7778 if [[ -z "${pathName:-}" ]]; then
···72 while IFS= read -r -d $'\0' f; do
73 isScript "$f" || continue
7475+ # read exits unclean if the shebang does not end with a newline, but still assigns the variable.
76+ # So if read returns errno != 0, we check if the assigned variable is non-empty and continue.
77+ read -r oldInterpreterLine < "$f" || [ "$oldInterpreterLine" ]
78+79 read -r oldPath arg0 args <<< "${oldInterpreterLine:2}"
8081 if [[ -z "${pathName:-}" ]]; then