summaryrefslogtreecommitdiffstats
path: root/scripts/libmakepkg/source
diff options
context:
space:
mode:
authorEli Schwartz <eschwartz@archlinux.org>2019-11-26 01:07:56 +0100
committerAllan McRae <allan@archlinux.org>2019-11-26 01:22:16 +0100
commit349c22d043290ccd0cce9f30981f5415e295442a (patch)
tree7b7ebb20c2810873aab51034cba36dcc09affbee /scripts/libmakepkg/source
parent55233b69c74a087ff405d3f768e5303dacaf8129 (diff)
downloadpacman-349c22d043290ccd0cce9f30981f5415e295442a.tar.gz
pacman-349c22d043290ccd0cce9f30981f5415e295442a.tar.xz
makepkg: fix regression that broke extraction of file:// sources
In commit 9c817b654996249b8022e189ee7e2692f4668431 we made these sources extendable, and heuristically determined the correct extraction functions to use. But our fallback for protos that didn't have an exact extract_* function didn't take into account that 'extract_file' matches an actual proto... so we passed the netfile in while the function expected a file. Solution: the function should expect a netfile too, thereby allowing us to delay an attempted resolution of netfile -> file, to the one case where it is actually used. This makes us slightly more efficient in the non-file case, makes our functions a bit more consistent, and makes file:// extraction work again. Fixes FS#64648 Signed-off-by: Eli Schwartz <eschwartz@archlinux.org> Signed-off-by: Allan McRae <allan@archlinux.org>
Diffstat (limited to 'scripts/libmakepkg/source')
-rw-r--r--scripts/libmakepkg/source/file.sh.in3
1 files changed, 2 insertions, 1 deletions
diff --git a/scripts/libmakepkg/source/file.sh.in b/scripts/libmakepkg/source/file.sh.in
index 7297a1c6..df4256f7 100644
--- a/scripts/libmakepkg/source/file.sh.in
+++ b/scripts/libmakepkg/source/file.sh.in
@@ -83,8 +83,9 @@ download_file() {
}
extract_file() {
- local file=$1
+ local netfile=$1
+ local file=$(get_filename "$netfile")
local filepath=$(get_filepath "$file")
rm -f "$srcdir/${file}"
ln -s "$filepath" "$srcdir/"