From 8af820e60e777ed4318a198091c25474ae81d816 Mon Sep 17 00:00:00 2001 From: Aziz Rmadi <46684200+armadi1809@users.noreply.github.com> Date: Thu, 30 Jan 2025 23:21:51 -0600 Subject: [PATCH] fixed write header bug in case of errors in index html (#4185) --- webserver/handlers/index.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/webserver/handlers/index.go b/webserver/handlers/index.go index fb75c2982..dc4419333 100644 --- a/webserver/handlers/index.go +++ b/webserver/handlers/index.go @@ -108,9 +108,15 @@ func renderIndexHtml(w http.ResponseWriter, nonce string) { return } - if err := index.Execute(w, content); err != nil { + // Use a buffer to ensure that we do not write a partial response header before checking for errors + var buf bytes.Buffer + if err := index.Execute(&buf, content); err != nil { http.Error(w, err.Error(), http.StatusInternalServerError) + return } + + w.WriteHeader(http.StatusOK) + _, _ = w.Write(buf.Bytes()) } // MetadataPage represents a server-rendered web page for bots and web scrapers.