summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--subr/ex_pkg_dispatch.subr7
1 files changed, 4 insertions, 3 deletions
diff --git a/subr/ex_pkg_dispatch.subr b/subr/ex_pkg_dispatch.subr
index 0b0fa7d8..4ab157ce 100644
--- a/subr/ex_pkg_dispatch.subr
+++ b/subr/ex_pkg_dispatch.subr
@@ -30,7 +30,7 @@ exp_pkg_dispatch() {
ex_pkg_dispatch() {
local _tgt_name="${1}" _restart="${2}" _restart_at="${3}" _dispatch_fn="${4}" _pkgs_found_vname="${5}" \
_njob="" _njobs="" _njobs_max="" _pipe_msg="" _pipe_path="" _pkg_names="" _pkgs_found="" \
- _script_rc="" _stderrout_path="" _tgt_name_uc="";
+ _pkgs_found_new="" _script_rc="" _stderrout_path="" _tgt_name_uc="";
ex_rtl_fileop mkdir "${BUILD_WORKDIR}";
_pipe_path="${BUILD_WORKDIR}/build.fifo";
_tgt_name_uc="$(ex_rtl_toupper "${_tgt_name}")";
@@ -54,7 +54,7 @@ ex_pkg_dispatch() {
if [ ${#} -eq 0 ]; then
break;
else
- _pkgs_found="${_pkgs_found:+${_pkgs_found} }${1}";
+ _pkgs_found_new="${_pkgs_found_new:+${_pkgs_found_new} }${1}";
exp_pkg_dispatch "${1}" "${_tgt_name}" \
"${_restart_at}" "${_dispatch_fn}" \
"${_stderrout_path}" "${_pipe_path}" \
@@ -94,7 +94,8 @@ ex_pkg_dispatch() {
done;
"${_dispatch_fn}" finish_target "" "${_tgt_name}";
if [ -n "${_pkgs_found_vname}" ]; then
- ex_rtl_set_var_unsafe "${_pkgs_found_vname}" "${_pkgs_found}";
+ _pkgs_found="$(ex_rtl_get_var_unsafe "${_pkgs_found_vname}")";
+ ex_rtl_set_var_unsafe "${_pkgs_found_vname}" "${_pkgs_found:+${_pkgs_found} }${_pkgs_found_new}";
fi;
};