From 35d232481f22810df161cff37350fefb39bfd286 Mon Sep 17 00:00:00 2001 From: James Bardin Date: Mon, 22 Jun 2020 15:02:23 -0400 Subject: [PATCH] prevent panic in remote backend retry Ensure that the *http.Response is not nil before checking the status. --- backend/remote/backend.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/remote/backend.go b/backend/remote/backend.go index c261f2022..94132618c 100644 --- a/backend/remote/backend.go +++ b/backend/remote/backend.go @@ -495,7 +495,7 @@ func (b *Remote) retryLogHook(attemptNum int, resp *http.Response) { // The retry logic in the TFE client will retry both rate limited // requests and server errors, but in the remote backend we only // care about server errors so we ignore rate limit (429) errors. - if attemptNum == 0 || resp.StatusCode == 429 { + if attemptNum == 0 || (resp != nil && resp.StatusCode == 429) { // Reset the last retry time. b.lastRetry = time.Now() return