This solves cases like bug #350045.
((ret|=$?))
find "${dir}" -type l -print0 | \
- while read -d $'\0' brokenlink ; do
+ while read -r -d $'\0' brokenlink ; do
[[ -e ${brokenlink} ]] && continue
olddest=$(readlink "${brokenlink}")
[[ ${act} == "compress" ]] \
[[ -d ${srctree} ]] || return 0
find "${srctree}" -name '*.ecompress.skip' -print0 | \
- while read -d $'\0' src ; do
+ while read -r -d $'\0' src ; do
src=${src%.ecompress.skip}
dst="${dsttree}${src#${srctree}}"
parent=${dst%/*}
ret=0
find "${D}" -type d -name man > "${T}"/prepallman.filelist
-while read mandir ; do
+while read -r mandir ; do
mandir=${mandir#${D}}
prepman "${mandir%/man}"
((ret|=$?))
fi
fi
-find "${D}${infodir}" -type d -print0 | while read -d $'\0' x ; do
+find "${D}${infodir}" -type d -print0 | while read -r -d $'\0' x ; do
for f in "${x}"/.keepinfodir*; do
[[ -e ${f} ]] && continue 2
done
if [ -e /usr/share/gnuconfig/ ]; then
find "${WORKDIR}" -type f '(' \
-name config.guess -o -name config.sub ')' -print0 | \
- while read -d $'\0' x ; do
+ while read -r -d $'\0' x ; do
vecho " * econf: updating ${x/${WORKDIR}\/} with /usr/share/gnuconfig/${x##*/}"
cp -f /usr/share/gnuconfig/"${x##*/}" "${x}"
done
echo "QA Notice: EXPORT_FUNCTIONS is called before inherit in" \
"$ECLASS.eclass. For compatibility with <=portage-2.1.6.7," \
"only call EXPORT_FUNCTIONS after inherit(s)." \
- | fmt -w 75 | while read ; do eqawarn "$REPLY" ; done
+ | fmt -w 75 | while read -r ; do eqawarn "$REPLY" ; done
fi
local location
"use the --revert option or remove" \
"the timestamp file located at" \
"'${PORTDIR}/metadata/timestamp.x'." | fmt -w 70 | \
- while read line ; do
+ while read -r line ; do
ewarn "${line}"
done
r=0
echo "ERROR: user_special() called without arguments"
return 1
fi
- while read pat; do
+ while read -r pat; do
echo ${1} | grep "${pat}" > /dev/null && return 0
done < ${PORTAGE_CONFIGROOT}etc/etc-update.special
fi
fi
# Save NEEDED information after removing self-contained providers
- scanelf -qyRF '%a;%p;%S;%r;%n' "${D}" | { while IFS= read l; do
+ scanelf -qyRF '%a;%p;%S;%r;%n' "${D}" | { while IFS= read -r l; do
arch=${l%%;*}; l=${l#*;}
obj="/${l%%;*}"; l=${l#*;}
soname=${l%%;*}; l=${l#*;}
echo "Please do not file a Gentoo bug and instead" \
"report the above QA issues directly to the upstream" \
"developers of this software." | fmt -w 70 | \
- while read line ; do eqawarn "${line}" ; done
+ while read -r line ; do eqawarn "${line}" ; done
eqawarn "Homepage: ${HOMEPAGE}"
hasq stricter ${FEATURES} && die "install aborted due to" \
"poor programming practices shown above"
if hasq sfperms $FEATURES; then
local i
find "${D}" -type f -perm -4000 -print0 | \
- while read -d $'\0' i ; do
+ while read -r -d $'\0' i ; do
if [ -n "$(find "$i" -perm -2000)" ] ; then
ebegin ">>> SetUID and SetGID: [chmod o-r] /${i#${D}}"
chmod o-r "$i"
fi
done
find "${D}" -type f -perm -2000 -print0 | \
- while read -d $'\0' i ; do
+ while read -r -d $'\0' i ; do
if [ -n "$(find "$i" -perm -4000)" ] ; then
# This case is already handled
# by the SetUID check above.
git_log_opts+=" $TREE_ISH"
fi
skip_next=false
-git log $git_log_opts | fmt -w 80 -p " " | while read ; do
+git log $git_log_opts | fmt -w 80 -p " " | while read -r ; do
if [[ $skip_next = true ]] ; then
skip_next=false
elif [[ $REPLY = " svn path="* ]] ; then