Prevent superfluous response.WriteHeader (#15456)

This PR simply checks the status before writing the header.

Signed-off-by: Andrew Thornton <art27@cantab.net>
This commit is contained in:
zeripath 2021-04-14 13:57:18 +01:00 committed by GitHub
parent 55eb1745bd
commit 8e2a8efd84
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -4,7 +4,9 @@
package context package context
import "net/http" import (
"net/http"
)
// ResponseWriter represents a response writer for HTTP // ResponseWriter represents a response writer for HTTP
type ResponseWriter interface { type ResponseWriter interface {
@ -60,8 +62,10 @@ func (r *Response) WriteHeader(statusCode int) {
} }
r.beforeExecuted = true r.beforeExecuted = true
} }
r.status = statusCode if r.status == 0 {
r.ResponseWriter.WriteHeader(statusCode) r.status = statusCode
r.ResponseWriter.WriteHeader(statusCode)
}
} }
// Flush flush cached data // Flush flush cached data