3
0
Fork 0
forked from mirrors/nixpkgs

Don't split paths with spaces

setup.sh uses the anti-pattern `for f in $(find ...); do` in several
places. `find` returns one path per line, but `for` splits its arguments
by words, so paths which contain spaces are incorrectly split! The
correct way is `find ... | while read f; do`
This commit is contained in:
Thomas Tuegel 2014-01-11 07:54:35 -06:00
parent 51713fbbfc
commit e15fc83fc9

View file

@ -575,7 +575,7 @@ configurePhase() {
fi
if [ -z "$dontFixLibtool" ]; then
for i in $(find . -name "ltmain.sh"); do
find . -iname "ltmain.sh" | while read i; do
echo "fixing libtool script $i"
fixLibtool $i
done
@ -670,7 +670,7 @@ patchShebangs() {
local oldInterpreterLine
local newInterpreterLine
for f in $(find "$dir" -type f -perm +0100); do
find "$dir" -type f -perm +0100 | while read f; do
if [ "$(head -1 "$f" | head -c +2)" != '#!' ]; then
# missing shebang => not a script
continue