From e0cc978690538ff2e47392e2f020c69e088d9050 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak Date: Thu, 13 Nov 2025 12:50:57 +0100 Subject: [PATCH] build_sysext: Fix a crash when there were no forbidden packages Signed-off-by: Krzesimir Nowak --- build_sysext | 42 ++++++++++++++++++++++-------------------- 1 file changed, 22 insertions(+), 20 deletions(-) diff --git a/build_sysext b/build_sysext index 5d0cb4e232..318104d982 100755 --- a/build_sysext +++ b/build_sysext @@ -263,27 +263,29 @@ info "Writing ${SYSEXTNAME}_packages.txt" ROOT="${THE_INSTALL_ROOT}" PORTAGE_CONFIGROOT="/build/${FLAGS_board}" \ equery --no-color list --format '$cpv::$repo' '*' > "${BUILD_DIR}/${SYSEXTNAME}_packages.txt" -# Check if there are forbidden packages -mapfile -t pairs <<<"${FLAGS_forbidden_packages//,/$'\n'}" -declare -A re_msg_pairs=() -for pair in "${pairs[@]}"; do - re=${pair%%;*} - msg=${pair#.;} - re_msg_pairs["${re}"]="${msg}" -done - -mapfile -t pkgs <"${BUILD_DIR}/${SYSEXTNAME}_packages.txt" -has_forbidden_pkg= -for pkg in "${pkgs[@]}"; do - for re in "${!re_msg_pairs[@]}"; do - if [[ ${pkg} =~ ${re} ]]; then - has_forbidden_pkg=x - error "Forbidden package ${pkg}: ${msg}" - fi +if [[ -n ${FLAGS_forbidden_packages} ]]; then + # Check if there are forbidden packages + mapfile -t pairs <<<"${FLAGS_forbidden_packages//,/$'\n'}" + declare -A re_msg_pairs=() + for pair in "${pairs[@]}"; do + re=${pair%%;*} + msg=${pair#.;} + re_msg_pairs["${re}"]="${msg}" done -done -if [[ -n ${has_forbidden_pkg} ]]; then - die "Forbidden packages encountered" + + mapfile -t pkgs <"${BUILD_DIR}/${SYSEXTNAME}_packages.txt" + has_forbidden_pkg= + for pkg in "${pkgs[@]}"; do + for re in "${!re_msg_pairs[@]}"; do + if [[ ${pkg} =~ ${re} ]]; then + has_forbidden_pkg=x + error "Forbidden package ${pkg}: ${msg}" + fi + done + done + if [[ -n ${has_forbidden_pkg} ]]; then + die "Forbidden packages encountered" + fi fi if [[ "${FLAGS_strip_binaries}" = "${FLAGS_TRUE}" ]]; then