diff --git a/server/common/types.go b/server/common/types.go index cade9945..828dfd64 100644 --- a/server/common/types.go +++ b/server/common/types.go @@ -37,6 +37,9 @@ func (f File) Size() int64 { return f.FSize } func (f File) Mode() os.FileMode { + if f.IsDir() { + return os.ModeDir + } return 0 } func (f File) ModTime() time.Time { diff --git a/server/ctrl/files.go b/server/ctrl/files.go index 7ceda18c..a3032b58 100644 --- a/server/ctrl/files.go +++ b/server/ctrl/files.go @@ -69,12 +69,12 @@ func FileLs(ctx App, res http.ResponseWriter, req *http.Request) { Name: name, Size: entries[i].Size(), Time: modTime, - Type: func(isDir bool) string { - if isDir == true { - return "directory" + Type: func(mode os.FileMode) string { + if mode.IsRegular() { + return "file" } - return "file" - }(entries[i].IsDir()), + return "directory" + }(entries[i].Mode()), } }