[pacman-dev] [PATCH] makepkg: do not allow badly formatted arch lines
It appears there are a lot of packages with arch=('i686 x86_64') floating around. Quote the arch array when passing as a parameter to detect such things. Signed-off-by: Allan McRae <allan@archlinux.org> --- scripts/makepkg.sh.in | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index ccc1ddf..4cb8173 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -2136,7 +2136,7 @@ check_sanity() { done || ret=1 if [[ $arch != 'any' ]]; then - if ! in_array $CARCH ${arch[@]}; then + if ! in_array $CARCH "${arch[@]}"; then if (( ! IGNOREARCH )); then error "$(gettext "%s is not available for the '%s' architecture.")" "$pkgbase" "$CARCH" plain "$(gettext "Note that many packages may need a line added to their %s")" "$BUILDSCRIPT" @@ -2151,7 +2151,7 @@ check_sanity() { local arch_list="" eval $(declare -f package_${i} | sed -n 's/\(^[[:space:]]*arch=\)/arch_list=/p') if [[ ${arch_list[@]} && ${arch_list} != 'any' ]]; then - if ! in_array $CARCH ${arch_list[@]}; then + if ! in_array $CARCH "${arch_list[@]}"; then if (( ! IGNOREARCH )); then error "$(gettext "%s is not available for the '%s' architecture.")" "$i" "$CARCH" ret=1 -- 1.8.4.1
participants (1)
-
Allan McRae