diff options
-rw-r--r-- | scripts/makepkg.sh.in | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index b30e9d04..f2a5008f 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -394,16 +394,25 @@ source_has_signatures() { return 1 } +string_matches_glob() { + local string=$1 + local glob=$2 + case "$string" in + $glob) return 0;; + esac + return 1 +} + get_downloadclient() { # $1 = URL with valid protocol prefix local url=$1 local proto="${url%%://*}" - # loop through DOWNLOAD_AGENTS variable looking for protocol + # loop through DLAGENTS (download agents) variable looking for protocol local i for i in "${DLAGENTS[@]}"; do local handler="${i%%::*}" - if [[ $proto = "$handler" ]]; then + if string_matches_glob "$proto" "$handler"; then local agent="${i##*::}" break fi |