From ddb09fcafbe8ea6dc5a34e6238bf0992143b5eb2 Mon Sep 17 00:00:00 2001 From: Captain ALM Date: Fri, 15 Jul 2022 15:28:01 +0100 Subject: [PATCH] Make sure no content length is outputted in non-content circumstances. --- pageHandler/utils/process-preconditions.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pageHandler/utils/process-preconditions.go b/pageHandler/utils/process-preconditions.go index 71b2810..99d2d31 100644 --- a/pageHandler/utils/process-preconditions.go +++ b/pageHandler/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