From 0b2359d0ca5ef21c102735cc26876614d71c57ab Mon Sep 17 00:00:00 2001 From: deajan Date: Sat, 12 Nov 2016 14:05:02 +0100 Subject: [PATCH] Fixed bash 4.2 compatibility --- packaging/ARCH/mksrcinfo | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/packaging/ARCH/mksrcinfo b/packaging/ARCH/mksrcinfo index fd3990b..6a42272 100755 --- a/packaging/ARCH/mksrcinfo +++ b/packaging/ARCH/mksrcinfo @@ -27,7 +27,24 @@ funcgrep() { { declare -f "$1" || declare -f package; } 2>/dev/null | grep -E "$2" } +# extract_global_var function compatible with bash 4.2 extract_global_var() { + # $1: variable name + # $2: multivalued + # $3: name of output var + + local attr=$1 isarray=$2 outputvar=$3 ref + + if (( isarray )); then + array_build ref "$attr" + [[ ${ref[@]} ]] && array_build "$outputvar" "$attr" + else + [[ ${!attr} ]] && printf -v "$outputvar" %s "${!attr}" + fi +} + +# extract global_var function compatible with bash 4.3+ +old_extract_global_var() { # $1: variable name # $2: multivalued # $3: name of output var