From 6b011cad6a6d59535d1d1fe810a5ba5774e2ec5b Mon Sep 17 00:00:00 2001 From: Mihai Moldovan Date: Thu, 2 Apr 2015 02:10:12 +0200 Subject: bin/build-rpm-package: do not create a subshell in build_packages(), so that TMP_MOCK_CFG_DIR is actually modified in the main process. --- bin/build-rpm-package | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/bin/build-rpm-package b/bin/build-rpm-package index e6f42a9..ecf699c 100755 --- a/bin/build-rpm-package +++ b/bin/build-rpm-package @@ -560,7 +560,15 @@ clear_pkgdist() { } build_packages() { - echo "$RPM_BUILD_FOR" | sed -e 's/ /\n/g' | while read line; do + # Do spawn a subshell here. Functions like get_extra_repository() need to + # change global variables in the main process. + typeset -a RPM_BUILD_FOR_ARR + typeset OLDIFS="${IFS}" + IFS=" " + read -a RPM_BUILD_FOR_ARR <<< "${RPM_BUILD_FOR}" + IFS="${OLDIFS}" + + for line in "${RPM_BUILD_FOR_ARR[@]}"; do l_DIST="$(echo ${line/: /:} | cut -d":" -f1 | tr [:upper:] [:lower:])" l_CODENAMES="${CODENAMES:-$(echo ${line/: /:} | cut -d":" -f2- | sed -e 's/,/ /g' | tr [:upper:] [:lower:])}" echo "$RPM_DISTS_SUPPORTED" | grep $l_DIST >/dev/null && { -- cgit v1.2.3