libmakepkg: fix compatibility with bash-5.2 patsub_replacement
Bash-5.2 introduced the patsub_replacement shell option, which is enabled by default. Apparently is it supposed to handle a sed-like idiom, but what it does achieve is making any substitution involving a "&" requiring special care. For makepkg's DLAGENTS, we replace "%o" and "%u" if present. Any "&" in the replacement fields triggers patsub_replacement unless quoted. This is particularly important for the URL field. Add relevant quotes to avoid issues. Signed-off-by: Allan McRae <allan@archlinux.org>
This commit is contained in:
parent
1327ce7bd8
commit
0e938f1886
1 changed files with 2 additions and 2 deletions
|
@ -60,11 +60,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
|
||||
|
|
Loading…
Add table
Reference in a new issue