From 95e1a1ef8223dea2b8eb41e60428858b1c39f47f Mon Sep 17 00:00:00 2001 From: William Giokas <1007380@gmail.com> Date: Mon, 28 Apr 2014 14:16:04 -0500 Subject: makepkg: Allow using sources with :: in them Git has the ability to use helper applications for interfacing with hg, and from what we had before, the following url:: foo::git+hg::http://foo.bar/foobar would get converted to something along the lines of: filename: foo URL: http://foo.bar/foobar and the 'git+hg' part would essentially be ignored when it's getting set up in the 'get_protocol' and 'get_downloadclient' functions. With this patch it is possible to have a source link with '::' in it, however it is not possible to have a filename with '::', which is the current behavior. Signed-off-by: Allan McRae --- scripts/makepkg.sh.in | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'scripts') diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index 8e8a64ca..6f6d41c8 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -275,10 +275,10 @@ get_url() { get_protocol() { if [[ $1 = *://* ]]; then # strip leading filename - local proto="${1##*::}" + local proto="${1#*::}" printf "%s\n" "${proto%%://*}" elif [[ $1 = *lp:* ]]; then - local proto="${1##*::}" + local proto="${1#*::}" printf "%s\n" "${proto%%lp:*}" else printf "%s\n" local @@ -293,7 +293,7 @@ get_downloadclient() { for i in "${DLAGENTS[@]}"; do local handler="${i%%::*}" if [[ $proto = "$handler" ]]; then - local agent="${i##*::}" + local agent="${i#*::}" break fi done -- cgit v1.2.3-54-g00ecf