From 157867933ff77037555983eb9c085e8e9471a348 Mon Sep 17 00:00:00 2001 From: Florian Fischer Date: Mon, 31 Jul 2023 18:17:44 +0200 Subject: bumble up a possible error creating the upload directory --- player.go | 2 +- upload.go | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/player.go b/player.go index b8db8fa..d819abc 100644 --- a/player.go +++ b/player.go @@ -53,7 +53,7 @@ func NewMpvPlayer(wrms *Wrms, backends []string) *MpvPlayer { case "local": b = NewLocalBackend(wrms.Config.LocalMusicDir) case "upload": - b = NewUploadBackend(wrms.Config.UploadDir) + b, err = NewUploadBackend(wrms.Config.UploadDir) default: llog.Error("Not supported backend %s", backend) } diff --git a/upload.go b/upload.go index 7a0ecc8..1596857 100644 --- a/upload.go +++ b/upload.go @@ -17,20 +17,22 @@ type UploadBackend struct { uploadDir string } -func NewUploadBackend(uploadDir string) *UploadBackend { +func NewUploadBackend(uploadDir string) (*UploadBackend, error) { b := UploadBackend{uploadDir: uploadDir} dirInfo, err := os.Stat(uploadDir) if os.IsNotExist(err) { - os.MkdirAll(uploadDir, 0750) + if err = os.MkdirAll(uploadDir, 0750); err != nil { + return nil, err + } } else if !dirInfo.IsDir() { llog.Fatal("upload directory %s exists and is not a directory", uploadDir) } b.setupUploadRoute() - return &b + return &b, nil } func (b *UploadBackend) upload(w http.ResponseWriter, r *http.Request) { -- cgit v1.2.3