From 1a48e7815f300ed9b08b687a4cee4b2eadc4bb36 Mon Sep 17 00:00:00 2001 From: Captain ALM Date: Fri, 15 Jul 2022 15:25:50 +0100 Subject: [PATCH] Make sure no content length is outputted in non-content circumstances. --- web/utils/process-preconditions.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/web/utils/process-preconditions.go b/web/utils/process-preconditions.go index 71b2810..99d2d31 100644 --- a/web/utils/process-preconditions.go +++ b/web/utils/process-preconditions.go @@ -37,6 +37,7 @@ func ProcessSupportedPreconditionsForNext(rw http.ResponseWriter, req *http.Requ } if conditionFailed { SwitchToNonCachingHeaders(rw.Header()) + rw.Header().Del("Content-Length") WriteResponseHeaderCanWriteBody(req.Method, rw, http.StatusPreconditionFailed, "") return false } @@ -54,6 +55,7 @@ func ProcessSupportedPreconditionsForNext(rw http.ResponseWriter, req *http.Requ parse, err := time.Parse(http.TimeFormat, req.Header.Get("If-Unmodified-Since")) if err == nil && modT.After(parse) { SwitchToNonCachingHeaders(rw.Header()) + rw.Header().Del("Content-Length") WriteResponseHeaderCanWriteBody(req.Method, rw, http.StatusPreconditionFailed, "") return false } @@ -99,6 +101,7 @@ func ProcessRangePreconditions(maxLength int64, rw http.ResponseWriter, req *htt } } else { SwitchToNonCachingHeaders(rw.Header()) + rw.Header().Del("Content-Length") rw.Header().Set("Content-Range", "bytes */"+strconv.FormatInt(maxLength, 10)) WriteResponseHeaderCanWriteBody(req.Method, rw, http.StatusRequestedRangeNotSatisfiable, "") return nil