From 3a96a1a594d688225675d0b9bd7f90fd4669b7a5 Mon Sep 17 00:00:00 2001 From: Jack Nagel Date: Fri, 22 Aug 2014 22:55:10 -0500 Subject: [PATCH] Use a set to track failed downloads --- Library/Homebrew/cmd/fetch.rb | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/Library/Homebrew/cmd/fetch.rb b/Library/Homebrew/cmd/fetch.rb index cb86545aeb..9b0c1389cb 100644 --- a/Library/Homebrew/cmd/fetch.rb +++ b/Library/Homebrew/cmd/fetch.rb @@ -60,19 +60,15 @@ module Homebrew private def retry_fetch? f - @fetch_failed ||= {} - already_failed = @fetch_failed.fetch(f.name, false) - - if already_failed || !ARGV.include?("--retry") + @fetch_failed ||= Set.new + if ARGV.include?("--retry") && @fetch_failed.add?(f.name) + ohai "Retrying download" + f.clear_cache + true + else Homebrew.failed = true - return false + false end - - ohai "Retrying download" - - f.clear_cache - @fetch_failed[f.name] = true - true end def fetch_fetchable f