diff options
author | Felix Fietkau <nbd@nbd.name> | 2016-12-16 15:15:48 +0100 |
---|---|---|
committer | Felix Fietkau <nbd@nbd.name> | 2016-12-16 15:16:47 +0100 |
commit | 651bc94df424faae586f0ad8ca0f0a4ef95e5090 (patch) | |
tree | 4f297f7529969e4c4688bd5da5a42bd14812d763 | |
parent | f3b866f93a6d379752be15d698a1345e50b351f3 (diff) | |
download | upstream-651bc94df424faae586f0ad8ca0f0a4ef95e5090.tar.gz upstream-651bc94df424faae586f0ad8ca0f0a4ef95e5090.tar.bz2 upstream-651bc94df424faae586f0ad8ca0f0a4ef95e5090.zip |
download.pl: check for existing file before the first download attempt
In the build system, flock will prevent multiple concurrent downloads
for the same file. However, if one download request for the same file is
waiting for another one to finish, it will result in downloading the
same file twice consecutively.
Prevent this issue by exiting immediately if the file has already been
downloaded
Signed-off-by: Felix Fietkau <nbd@nbd.name>
-rwxr-xr-x | scripts/download.pl | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/scripts/download.pl b/scripts/download.pl index 90d50a8862..ab72b6bdd3 100755 --- a/scripts/download.pl +++ b/scripts/download.pl @@ -246,12 +246,11 @@ push @mirrors, 'http://sources.lede-project.org'; push @mirrors, 'http://mirror2.openwrt.org/sources'; push @mirrors, 'http://downloads.openwrt.org/sources'; -while (!$ok) { +while (!-f "$target/$filename") { my $mirror = shift @mirrors; $mirror or die "No more mirrors to try - giving up.\n"; download($mirror); - -f "$target/$filename" and $ok = 1; } $SIG{INT} = \&cleanup; |