[Dev] [PATCH 2/3] makepkg: do glob expansion in DLAGENTS maps

Luke Shumaker LukeShu at sbcglobal.net
Sat Aug 25 17:33:14 GMT 2012


This allows vcs-* schemes to be used for vcsget.

Signed-off-by: Luke Shumaker <LukeShu at sbcglobal.net>
---
 scripts/makepkg.sh.in | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index b30e9d0..f2a5008 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
-- 
1.7.12




More information about the Dev mailing list