From af5c148ed1d8e405978b71e7efe15d0a829cab50 Mon Sep 17 00:00:00 2001 From: Bart Date: Fri, 31 Jul 2020 22:54:18 +0000 Subject: admin,templates,core: Minor enhancements and error handling (#3607) * fix 2 possible bugs * handle unhandled errors --- modules/caddyhttp/reverseproxy/selectionpolicies.go | 3 +++ modules/caddyhttp/templates/tplcontext_test.go | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) (limited to 'modules/caddyhttp') diff --git a/modules/caddyhttp/reverseproxy/selectionpolicies.go b/modules/caddyhttp/reverseproxy/selectionpolicies.go index 7c36dec..e33ebe4 100644 --- a/modules/caddyhttp/reverseproxy/selectionpolicies.go +++ b/modules/caddyhttp/reverseproxy/selectionpolicies.go @@ -401,6 +401,9 @@ func leastRequests(upstreams []*Upstream) *Upstream { best = append(best, upstream) } } + if len(best) == 0 { + return nil + } return best[weakrand.Intn(len(best))] } diff --git a/modules/caddyhttp/templates/tplcontext_test.go b/modules/caddyhttp/templates/tplcontext_test.go index 32c6a16..c0658a1 100644 --- a/modules/caddyhttp/templates/tplcontext_test.go +++ b/modules/caddyhttp/templates/tplcontext_test.go @@ -90,7 +90,7 @@ func TestCookie(t *testing.T) { }, { // cookie with optional fields - cookie: &http.Cookie{Name: "cookie", Value: "cookieValue", Path: "/path", Domain: "https://localhost", Expires: (time.Now().Add(10 * time.Minute)), MaxAge: 120}, + cookie: &http.Cookie{Name: "cookie", Value: "cookieValue", Path: "/path", Domain: "https://localhost", Expires: time.Now().Add(10 * time.Minute), MaxAge: 120}, cookieName: "cookie", expect: "cookieValue", }, -- cgit v1.2.3