diff options
author | William Giokas <1007380@gmail.com> | 2014-04-28 14:16:04 -0500 |
---|---|---|
committer | Allan McRae <allan@archlinux.org> | 2014-09-15 09:30:54 +1000 |
commit | 95e1a1ef8223dea2b8eb41e60428858b1c39f47f (patch) | |
tree | 79a55002756f0e80e1e80e9834920264a58904cb /scripts | |
parent | 38b6de937cdbf581d13b404b50183d1b7e457413 (diff) |
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 <allan@archlinux.org>
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/makepkg.sh.in | 6 |
1 files changed, 3 insertions, 3 deletions
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 |