index : pacman | |
Archlinux32 fork of pacman | gitolite user |
summaryrefslogtreecommitdiff |
author | Dave Reisner <dreisner@archlinux.org> | 2013-03-09 22:45:00 -0500 |
---|---|---|
committer | Allan McRae <allan@archlinux.org> | 2013-03-14 11:47:11 +1000 |
commit | 6c870953c563c69c7e833637fec292e291511b45 (patch) | |
tree | 12b79af023f8264a696fbb6d12a29d22dc774b95 /scripts/pkgdelta.sh.in | |
parent | 63f04177c3987b5e4562d04ea05c867e56dabb9b (diff) |
-rw-r--r-- | scripts/pkgdelta.sh.in | 5 |
diff --git a/scripts/pkgdelta.sh.in b/scripts/pkgdelta.sh.in index a6aad3f6..39046b87 100644 --- a/scripts/pkgdelta.sh.in +++ b/scripts/pkgdelta.sh.in @@ -75,6 +75,7 @@ isnumeric() { } read_pkginfo() { + unset pkgver pkgname arch while IFS='=' read -r field value; do # skip comments and invalid lines [[ $field = '#'* || -z $value ]] && continue @@ -82,10 +83,10 @@ read_pkginfo() { # skip lines which aren't fields we care about [[ $field != @(pkgver|pkgname|arch) ]] || continue - declare "$field=$value" + declare -g "${field% }=${value# }" [[ $pkgname && $pkgver && $arch ]] && return 0 - done + done < <(bsdtar -xOqf "$1" .PKGINFO 2>/dev/null) error "$(gettext "Invalid package file '%s'.")" "$1" return 1 |