From 6adb60ea2b22f16f3da2aaceddf413464aa45d91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Sterba?= <andre.sterba@stud.h-da.de> Date: Thu, 17 Jun 2021 11:32:44 +0200 Subject: [PATCH] Do not crash when stores folder does not yet exist --- nucleus/store.go | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/nucleus/store.go b/nucleus/store.go index 11fe79482..70f9ac232 100644 --- a/nucleus/store.go +++ b/nucleus/store.go @@ -4,6 +4,7 @@ import ( "encoding/json" "fmt" "io/ioutil" + "os" "reflect" "sync" @@ -446,7 +447,20 @@ func (s DeviceStore) Delete(id uuid.UUID) error { return nil } +func ensureFilesystemStorePathExists() error { + + pathToStore := "stores/" + + if _, err := os.Stat(pathToStore); os.IsNotExist(err) { + os.MkdirAll(pathToStore, 0700) + } + + return nil +} + func (s DeviceStore) LoadFromFilesystem() error { + ensureFilesystemStorePathExists() + fileName := fmt.Sprintf("stores/%s.json", s.store.name) dat, err := ioutil.ReadFile(fileName) -- GitLab