From: Sergey Matveev <stargrave@stargrave.org> Date: Sat, 12 Apr 2025 16:48:26 +0000 (+0300) Subject: Proper escaping of dirlists with colons X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=ee4a911412332b9a4b9205940fafe8604793866c;p=godlighty.git Proper escaping of dirlists with colons --- diff --git a/dirlist.go b/dirlist.go index 621fb88..bdf47eb 100644 --- a/dirlist.go +++ b/dirlist.go @@ -22,6 +22,7 @@ import ( "os" "path" "sort" + "strings" "time" "github.com/dustin/go-humanize" @@ -105,7 +106,7 @@ func dirList( Files []DirListFile }{ Root: root, - Dir: dir, + Dir: strings.TrimRight(dir, "/"), Readme: readme, Files: files, }) diff --git a/dirlist.tmpl b/dirlist.tmpl index 8fb266f..b63ccd4 100644 --- a/dirlist.tmpl +++ b/dirlist.tmpl @@ -13,7 +13,7 @@ <tr><th> </th><th>Name</th><th>Mtime</th><th>Size</th><th>Type</th></tr> {{$Dir := .Dir}}{{$Root := .Root}}{{range .Files}}<tr> <td {{if .Symlink}}rowspan="2"{{end}}>{{.Idx}}</td> - <td><a href="{{$Root}}{{$Dir}}{{.Name}}{{if .IsDir}}/{{end -}}"><tt> + <td><a href="{{$Root}}{{$Dir}}/{{.Name}}{{if .IsDir}}/{{end -}}"><tt> {{- .Name}}{{if .IsDir}}/{{end}}</tt></a></td> <td><tt>{{.ModTime}}</tt></td> <td>{{.Size}}</td> diff --git a/godlighty.go b/godlighty.go index ee2ff75..c81b102 100644 --- a/godlighty.go +++ b/godlighty.go @@ -1,6 +1,6 @@ // Highly-customizable HTTP, HTTP/2, HTTPS server package godlighty -const Version = "godlighty/0.7.0" +const Version = "godlighty/0.8.0" var BindAddr string