[pacman-dev] [PATCH] Ensure we are always in $SRCDEST before downloading

Allan McRae allan at archlinux.org
Wed Mar 27 06:13:57 EDT 2013


When VCS sources were updated, we changed into their root directory.
Any following source was then downloaded to an incorrect place causing
a failure in makepkg.  Ensure we are always in the $SRCDEST directory
before starting any download.

Fixes FS#34488.

Signed-off-by: Allan McRae <allan at archlinux.org>
---
 scripts/makepkg.sh.in | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index f9e0f95..45be8b6 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -749,12 +749,11 @@ download_sources() {
 		GET_VCS=0
 	fi
 
-	pushd "$SRCDEST" &>/dev/null
-
 	local netfile
 	for netfile in "${source[@]}"; do
-		local proto=$(get_protocol "$netfile")
+		pushd "$SRCDEST" &>/dev/null
 
+		local proto=$(get_protocol "$netfile")
 		case "$proto" in
 			local)
 				download_local "$netfile"
@@ -775,9 +774,9 @@ download_sources() {
 				download_file "$netfile"
 				;;
 		esac
-	done
 
-	popd &>/dev/null
+		popd &>/dev/null
+	done
 }
 
 # Automatically update pkgver variable if a pkgver() function is provided
-- 
1.8.2



More information about the pacman-dev mailing list