From 0fc47e8357af5ccd6f800819722229b1a279e5b5 Mon Sep 17 00:00:00 2001 From: Matthew Holt Date: Fri, 2 Oct 2020 15:23:52 -0600 Subject: map: Apply default if mapped output is nil --- modules/caddyhttp/map/caddyfile.go | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'modules/caddyhttp/map/caddyfile.go') diff --git a/modules/caddyhttp/map/caddyfile.go b/modules/caddyhttp/map/caddyfile.go index 67c148b..eb0c5ae 100644 --- a/modules/caddyhttp/map/caddyfile.go +++ b/modules/caddyhttp/map/caddyfile.go @@ -70,7 +70,10 @@ func parseCaddyfile(h httpcaddyfile.Helper) (caddyhttp.MiddlewareHandler, error) // every other line maps one input to one or more outputs in := h.Val() - outs := h.RemainingArgs() + var outs []interface{} + for _, out := range h.RemainingArgs() { + outs = append(outs, out) + } // cannot have more outputs than destinations if len(outs) > len(handler.Destinations) { @@ -78,9 +81,9 @@ func parseCaddyfile(h httpcaddyfile.Helper) (caddyhttp.MiddlewareHandler, error) } // for convenience, can have fewer outputs than destinations, but the - // underlying handler won't accept that, so we fill in empty values + // underlying handler won't accept that, so we fill in nil values for len(outs) < len(handler.Destinations) { - outs = append(outs, "") + outs = append(outs, nil) } // create the mapping -- cgit v1.2.3