From 4a457e3edc048be4a8bb7ab7e618f161d14b8893 Mon Sep 17 00:00:00 2001 From: spacewander Date: Mon, 2 Sep 2019 10:34:38 +0000 Subject: [PATCH] net/http: merge IsDir checks in fs.go's serveFile function MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Fixes #33385 Change-Id: I497ccd868d408a9c5648c72aa5ce41221368daf4 GitHub-Last-Rev: 3bf483808e10a13c522df02c2fc55fe278044680 GitHub-Pull-Request: golang/go#33423 Reviewed-on: https://go-review.googlesource.com/c/go/+/188677 Reviewed-by: Daniel Martí Run-TryBot: Daniel Martí TryBot-Result: Gobot Gobot --- src/net/http/fs.go | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/net/http/fs.go b/src/net/http/fs.go index 4c4f0e429e..27512411de 100644 --- a/src/net/http/fs.go +++ b/src/net/http/fs.go @@ -582,17 +582,15 @@ func serveFile(w ResponseWriter, r *Request, fs FileSystem, name string, redirec } } - // redirect if the directory name doesn't end in a slash if d.IsDir() { url := r.URL.Path + // redirect if the directory name doesn't end in a slash if url == "" || url[len(url)-1] != '/' { localRedirect(w, r, path.Base(url)+"/") return } - } - // use contents of index.html for directory, if present - if d.IsDir() { + // use contents of index.html for directory, if present index := strings.TrimSuffix(name, "/") + indexPage ff, err := fs.Open(index) if err == nil { -- 2.50.0