From b9c6f0a083a0130e9aa829c8f5b418a74e2b2144 Mon Sep 17 00:00:00 2001
From: Chris Lamb <chris@chris-lamb.co.uk>
Date: Sat, 26 Jul 2008 00:27:29 +0100
Subject: Fix cache poisoning issue in lh_binary_debian-installer with 404
 downloads

When wget 404's, an target file is created - this poisons the cache as the
file is apparently downloaded but in actuality is simply empty. We fix this
by unconditionally deleting the cache file if wget fails and emitting an
error.
---
 helpers/lh_binary_debian-installer | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/helpers/lh_binary_debian-installer b/helpers/lh_binary_debian-installer
index 42412b0..b147b12 100755
--- a/helpers/lh_binary_debian-installer
+++ b/helpers/lh_binary_debian-installer
@@ -207,7 +207,13 @@ Download_file () {
 	if [ ! -f "${_LH_CACHE_FILE}" ]
 	then
 		mkdir -p ${_LH_CACHE_DIR}
-		wget ${WGET_OPTIONS} -O "${_LH_CACHE_FILE}" "${_LH_URL}"
+		if ! wget ${WGET_OPTIONS} -O "${_LH_CACHE_FILE}" "${_LH_URL}"
+		then
+			rm -f "${_LH_CACHE_FILE}"
+
+			Echo_error "Could not download file: ${_LH_URL}"
+			exit 1
+		fi
 	fi
 
 	cp -fl "${_LH_CACHE_FILE}" "${_LH_TARGET}"
-- 
cgit v1.0