From c2721664aac000588e0a20b0bb1f8e896b18eddc Mon Sep 17 00:00:00 2001 From: Neil Roberts Date: Wed, 21 Sep 2011 11:54:51 +0100 Subject: [PATCH] mingw-fetch-dependencies.sh: Don't pass -c to wget The -c option for wget and -C - option to curl are used to make it continue the download if the file already exists. The idea was that it wouldn't waste time downloading the files again if the file already exists. However this causes problems if the remote file gets larger because the download will continue from the size of the old file so it will get corrupt. Instead let's just explicitly check if the file already exists and avoid calling wget or curl altogether. Reviewed-by: Robert Bragg --- build/mingw/mingw-fetch-dependencies.sh | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/build/mingw/mingw-fetch-dependencies.sh b/build/mingw/mingw-fetch-dependencies.sh index f40834898..54028b3dd 100755 --- a/build/mingw/mingw-fetch-dependencies.sh +++ b/build/mingw/mingw-fetch-dependencies.sh @@ -33,12 +33,17 @@ function download_file () local url="$1"; shift; local filename="$1"; shift; + if test -f "$DOWNLOAD_DIR/$filename"; then + echo "Skipping download of $filename because the file already exists"; + return 0; + fi; + case "$DOWNLOAD_PROG" in curl) - curl -C - -o "$DOWNLOAD_DIR/$filename" "$url"; + curl -o "$DOWNLOAD_DIR/$filename" "$url"; ;; *) - $DOWNLOAD_PROG -O "$DOWNLOAD_DIR/$filename" -c "$url"; + $DOWNLOAD_PROG -O "$DOWNLOAD_DIR/$filename" "$url"; ;; esac;