Date: Mon, 1 Oct 2012 08:32:05 +0000 (UTC) From: Doug Barton <dougb@FreeBSD.org> To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r241090 - user/dougb/portmaster Message-ID: <201210010832.q918W5N2011077@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: dougb Date: Mon Oct 1 08:32:05 2012 New Revision: 241090 URL: http://svn.freebsd.org/changeset/base/241090 Log: Due to improvements in the efficiency of portmaster's method of killing background processes when trap'ing, plus the declining quality of ports generally, when the background process that reads the distinfo files encountered a fatal error (which they have been doing more frequently of late), the resulting call to fail() would end up neatly killing all of that parent's background fetch processes as well. Fix that problem by not making the disruption in read_distinfos() fatal unless it's being used for --clean-distfiles. All the other calls to this function are run in the background for the distfile gathering process, and a missing file in that list is an inconvenience at worst. Modified: user/dougb/portmaster/portmaster Modified: user/dougb/portmaster/portmaster ============================================================================== --- user/dougb/portmaster/portmaster Mon Oct 1 06:48:59 2012 (r241089) +++ user/dougb/portmaster/portmaster Mon Oct 1 08:32:05 2012 (r241090) @@ -1188,7 +1188,18 @@ read_distinfos () { else pm_cd $origin || continue distinfo=`pm_make -V DISTINFO_FILE` - [ -n "$distinfo" ] || fail "No DISTINFO_FILE in $origin" + + # Do not make this error fatal unless using + # --clean-distfiles. This will prevent accidentally + # killing other background processes when running + # in the background itself. + if [ -z "$distinfo" ]; then + if [ -z "$CLEAN_DISTFILES" ]; then + continue + else + fail "No DISTINFO_FILE in $origin" + fi + fi fi if [ -s "$distinfo" ]; then
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201210010832.q918W5N2011077>