makepkg: avoid nested quoting in string replacement

I suspect this is just wrong -- you never need to quote the replacement
side of a PE. In bash 4.3, this is essentially a no-op, but because of
a bug in bash 4.2, we get embedded quotes as a result of this
replacement. The relevant changelog item in bash is:

  Fixed a bug that caused single quotes that resulted from $'...' quoting
  in the replacement portion of a double-quoted ${word/pat/rep} expansion
  to be treated as quote characters.

But this doesn't apply to us. Let's just drop the excessive quoting...

Signed-off-by: Allan McRae <allan@archlinux.org>
This commit is contained in:
Dave Reisner 2015-01-09 14:55:36 -05:00 committed by Allan McRae
parent 9e5e86aa14
commit 83d5512bf1
1 changed files with 2 additions and 2 deletions

View File

@ -362,11 +362,11 @@ download_file() {
# replace %o by the temporary dlfile if it exists
if [[ ${cmdline[*]} = *%o* ]]; then
dlfile=$filename.part
cmdline=("${cmdline[@]//%o/"$dlfile"}")
cmdline=("${cmdline[@]//%o/$dlfile}")
fi
# add the URL, either in place of %u or at the end
if [[ ${cmdline[*]} = *%u* ]]; then
cmdline=("${cmdline[@]//%u/"$url"}")
cmdline=("${cmdline[@]//%u/$url}")
else
cmdline+=("$url")
fi