Date: Sat, 13 Aug 2005 21:28:43 +0000 (UTC) From: Colin Percival <cperciva@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/usr.sbin/portsnap/portsnap portsnap.sh Message-ID: <200508132128.j7DLShWb080387@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
cperciva 2005-08-13 21:28:43 UTC
FreeBSD src repository
Modified files:
usr.sbin/portsnap/portsnap portsnap.sh
Log:
Correctly exit from extract_run() and update_run() if files needed are
missing from ${WORKDIR}/files/.
This bug was caused by the astonishing interaction of "return" and
pipelines; in the following code, the "return" does not exit the
function, but instead exits the subshell which was spawned for the last
element of the pipeline; consequently, the output produced is "foo".
foo() {
echo bar | while read baz; do
if [ ${baz} = "bar" ]; then
return 1
fi
done
echo foo
}
Reported by: simon
Revision Changes Path
1.7 +9 -4 src/usr.sbin/portsnap/portsnap/portsnap.sh
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200508132128.j7DLShWb080387>
