aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/cmd/fetch.rb
diff options
context:
space:
mode:
authorJack Nagel2014-08-22 22:55:10 -0500
committerJack Nagel2014-08-22 22:55:10 -0500
commitc5f7add48d81bfa28cd1b114852e551f5aa8f292 (patch)
tree6e9c93ed60e112816556cf21e4dafed215fdd834 /Library/Homebrew/cmd/fetch.rb
parentbc2b9ae8dc6c0256267ff8ff7bc90e348e4cf12c (diff)
downloadhomebrew-c5f7add48d81bfa28cd1b114852e551f5aa8f292.tar.bz2
Use a set to track failed downloads
Diffstat (limited to 'Library/Homebrew/cmd/fetch.rb')
-rw-r--r--Library/Homebrew/cmd/fetch.rb18
1 files changed, 7 insertions, 11 deletions
diff --git a/Library/Homebrew/cmd/fetch.rb b/Library/Homebrew/cmd/fetch.rb
index cb86545ae..9b0c1389c 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