[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#690210: option --extra-suite and failed download of 'Packages' files



Hi,

In some circumstances, debootstrap may fail to download
'Packages' files if the option --extra-suite=unreleased is
in use (it doesn't happen with the debian-ports mirrors
but with custom mirrors). It seems that it is caused by
a forgotten 'local' declaration in the patch merged.

In the details : commit [1] added loop variables in 
functions 'validate_suite' and 
'download_release_indices'. Both loop variables are named 
"s". And 'download_release_indices' calls 'validate_suite'.
As a result, 'validate_suite' alters the value of the
loop variable "s" of the calling function 
'download_release_indices' with surprising outcome.

A 'local' declaration of variables "s" would help.

I hope it will help !

Regards,

[1]: https://salsa.debian.org/installer-team/debootstrap/-/commit/868687581b56a5ffcaaf0e44100798f5feb747ff

diff -Naur a/debootstrap/functions b/debootstrap/functions
--- a/debootstrap/functions	2020-03-14 01:53:38.000000000 +0100
+++ b/debootstrap/functions	2020-08-19 11:56:42.255998139 +0200
@@ -552,6 +552,7 @@
 CODENAME=""
 validate_suite () {
 	local reldest suite
+	local s
 	reldest="$1"
 
 	CODENAME=$(sed -n "s/^Codename: *//p" "$reldest")
@@ -654,6 +655,7 @@
 	local m1 inreldest reldest relsigdest totalpkgs \
 	      subpath xzi bz2i gzi normi i ext \
 	      donepkgs pkgdest acquirebyhash
+	local s
 	m1="${MIRRORS%% *}"
 	for s in $SUITE $EXTRA_SUITES; do
 		inreldest="$TARGET/$($DLDEST rel "$s" "$m1" "dists/$s/InRelease")"


Reply to: