summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAaron Campbell <aaron@monkey.org>2015-11-04 20:43:12 +0100
committerAllan McRae <allan@archlinux.org>2015-11-05 02:55:17 +0100
commitbf0e8e6b435f0ab28745d6f6d3279dc66ac3e9ef (patch)
tree5cdee677076ff0da4688241af7846ba6052190d8
parent8fa02036c3175f4cb1e837b6da5281520524ccba (diff)
downloadpacman-bf0e8e6b435f0ab28745d6f6d3279dc66ac3e9ef.tar.gz
pacman-bf0e8e6b435f0ab28745d6f6d3279dc66ac3e9ef.tar.xz
Refactor lint_source to work with earlier versions of Bash
Negative subscripts to indexed arrays are not supported before 4.2. However, since substring expansion works on arrays, we can specify an offset of -1 to be taken relative to one greater than the maximum index of the specified array (see Parameter Expansion section of the bash man page). This works with both Bash 4.1 and 4.2, and 4.1 is already the oldest supported by pacman. Signed-off-by: Aaron Campbell <aaron@monkey.org> Signed-off-by: Allan McRae <allan@archlinux.org>
-rw-r--r--scripts/libmakepkg/lint_pkgbuild/source.sh.in2
1 files changed, 1 insertions, 1 deletions
diff --git a/scripts/libmakepkg/lint_pkgbuild/source.sh.in b/scripts/libmakepkg/lint_pkgbuild/source.sh.in
index c3272993..b5f45863 100644
--- a/scripts/libmakepkg/lint_pkgbuild/source.sh.in
+++ b/scripts/libmakepkg/lint_pkgbuild/source.sh.in
@@ -32,7 +32,7 @@ lint_pkgbuild_functions+=('lint_source')
lint_source() {
local idx=("${!source[@]}")
- if (( ${#source[*]} > 0 && (idx[-1] + 1) != ${#source[*]} )); then
+ if (( ${#source[*]} > 0 && (${idx[@]: -1} + 1) != ${#source[*]} )); then
error "$(gettext "Sparse arrays are not allowed for source")"
return 1
fi