From 8ceb66454d92e83a15e887026e858172b92970d0 Mon Sep 17 00:00:00 2001 From: Keith Petkus Date: Sun, 26 Jul 2020 01:29:27 -0400 Subject: [PATCH] sanity check the startup directory --- gui.go | 15 ++++++++++++++- main.go | 2 +- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/gui.go b/gui.go index 2a00cc0..8d998f7 100644 --- a/gui.go +++ b/gui.go @@ -38,8 +38,9 @@ func NewGUI() *GUI { // Start launches a new syndie-gui application func (client *GUI) Start(path string) { + sanityCheckStartupDir(path) client.db = newDatabase() - client.db.openDB(path) + client.db.openDB(path + "/db/bolt.db") client.db.reload() a := app.New() @@ -98,3 +99,15 @@ func (client *GUI) fetch(fetch bool) { func (client *GUI) applyOptions() { client.pagination = 25 } + +func sanityCheckStartupDir(path string) { + var err error + _, err = os.Stat(path) + if os.IsNotExist(err) { + os.Mkdir(path, 0777) + _, err = os.Stat(path + "/db/") + if os.IsNotExist(err) { + os.Mkdir(path+"/db/", 0777) + } + } +} diff --git a/main.go b/main.go index 4382ba8..d29125d 100644 --- a/main.go +++ b/main.go @@ -11,5 +11,5 @@ func main() { if err != nil { panic("Error obtaining current user") } - client.Start(usr.HomeDir + "/.syndie/db/bolt.db") + client.Start(usr.HomeDir + "/.syndie") }