From 217b069172687d4bf7feaa36b94918681ef3aa9b Mon Sep 17 00:00:00 2001 From: sloumdrone Date: Tue, 3 Dec 2019 19:58:18 -0800 Subject: [PATCH] Moves folder creation and error handling to loadConfig --- defaults.go | 7 +------ main.go | 8 +++++++- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/defaults.go b/defaults.go index 52bb828..a89e7f5 100644 --- a/defaults.go +++ b/defaults.go @@ -71,12 +71,7 @@ func homePath() string { func xdgConfigPath() string { configPath := os.Getenv("XDG_CONFIG_HOME") if configPath == "" { - fp := filepath.Join(homePath(), ".config") - err := os.MkdirAll(fp, 0755) - if err != nil { - panic("Unable to create configuration directory: ~/.config") - } - return fp + return filepath.Join(homePath(), ".config") } return configPath } diff --git a/main.go b/main.go index ef01c34..3404b38 100644 --- a/main.go +++ b/main.go @@ -94,7 +94,13 @@ func lowerCaseOpt(opt, val string) string { } func loadConfig() error { - file, err := os.Open(bombadillo.Options["configlocation"] + "/.bombadillo.ini") + fp := filepath.Join(bombadillo.Options["configlocation"], ".bombadillo.ini") + err := os.MkdirAll(fp, 0755) + if err != nil { + return fmt.Errorf("configlocation cannot be written to or is invalid") + } + + file, err := os.Open(fp) if err != nil { err = saveConfig() if err != nil {