Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 23 Sep 2019 15:58:54 +0000 (UTC)
From:      Michael Gmelin <grembo@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-releng@freebsd.org
Subject:   svn commit: r352628 - releng/12.1/usr.sbin/freebsd-update
Message-ID:  <201909231558.x8NFwsac002801@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: grembo (ports committer)
Date: Mon Sep 23 15:58:54 2019
New Revision: 352628
URL: https://svnweb.freebsd.org/changeset/base/352628

Log:
  MF stable/12 r352608
  
  Approved by:	re (gjb)
  
  r352608:
  freebsd-update: Fix src component detection
  
  In case BASEDIR was set to a directory that differed from the default
  filesystem root, freebsd-update wrongly checked for the existence
  of /usr/src/COPYRIGHT to determine if the src component was
  installed. Existing code to address this wasn't effective due to the
  order in which configuration options were evaluated.
  
  PR:		224048, 238558, 239997
  Reviewed by:	emaste
  Differential Revision:	https://reviews.freebsd.org/D21579

Modified:
  releng/12.1/usr.sbin/freebsd-update/freebsd-update.sh
Directory Properties:
  releng/12.1/   (props changed)

Modified: releng/12.1/usr.sbin/freebsd-update/freebsd-update.sh
==============================================================================
--- releng/12.1/usr.sbin/freebsd-update/freebsd-update.sh	Mon Sep 23 15:08:17 2019	(r352627)
+++ releng/12.1/usr.sbin/freebsd-update/freebsd-update.sh	Mon Sep 23 15:58:54 2019	(r352628)
@@ -221,6 +221,14 @@ config_KeepModifiedMetadata () {
 # Add to the list of components which should be kept updated.
 config_Components () {
 	for C in $@; do
+		COMPONENTS="${COMPONENTS} ${C}"
+	done
+}
+
+# Remove src component from list if it isn't installed
+finalize_components_config () {
+	COMPONENTS=""
+	for C in $@; do
 		if [ "$C" = "src" ]; then
 			if [ -e "${BASEDIR}/usr/src/COPYRIGHT" ]; then
 				COMPONENTS="${COMPONENTS} ${C}"
@@ -3284,6 +3292,7 @@ get_params () {
 	parse_cmdline $@
 	parse_conffile
 	default_params
+	finalize_components_config ${COMPONENTS}
 }
 
 # Fetch command.  Make sure that we're being called



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201909231558.x8NFwsac002801>