aboutsummaryrefslogtreecommitdiffstats
path: root/c_init.go
diff options
context:
space:
mode:
authorJoe <rbo@gmx.us>2023-12-14 20:20:20 +0100
committerJoe <rbo@gmx.us>2023-12-14 20:20:20 +0100
commit3f3fba89c0d2197c08ad8c9fdfd695fb675fd03a (patch)
tree1214cceed260b4218e336e6e2249c11a06cce76c /c_init.go
parentcommit (diff)
downloadhardflip-3f3fba89c0d2197c08ad8c9fdfd695fb675fd03a.tar.gz
hardflip-3f3fba89c0d2197c08ad8c9fdfd695fb675fd03a.tar.bz2
hardflip-3f3fba89c0d2197c08ad8c9fdfd695fb675fd03a.tar.xz
hardflip-3f3fba89c0d2197c08ad8c9fdfd695fb675fd03a.tar.zst
hardflip-3f3fba89c0d2197c08ad8c9fdfd695fb675fd03a.zip
make
Diffstat (limited to 'c_init.go')
-rw-r--r--c_init.go25
1 files changed, 14 insertions, 11 deletions
diff --git a/c_init.go b/c_init.go
index 08519b3..715130f 100644
--- a/c_init.go
+++ b/c_init.go
@@ -56,6 +56,7 @@ import (
// not exist. The first path being checked is $XDG_DATA_HOME then
// $HOME/.local/share. It returns the full data directory path.
func c_get_data_dir() string {
+ var ptr *string
home := os.Getenv("HOME")
xdg_home := os.Getenv("XDG_DATA_HOME")
@@ -63,21 +64,23 @@ func c_get_data_dir() string {
c_die("env variable HOME not defined", nil)
}
if len(xdg_home) > 0 {
- if _, err := os.Stat(xdg_home); os.IsNotExist(err) {
- if err := os.MkdirAll(xdg_home, os.ModePerm); err != nil {
- c_die("could not create path " + xdg_home, err)
+ ptr = &xdg_home
+ if _, err := os.Stat(*ptr); os.IsNotExist(err) {
+ if err := os.MkdirAll(*ptr, os.ModePerm); err != nil {
+ c_die("could not create path " + *ptr, err)
}
- fmt.Println("created folder path " + xdg_home)
+ fmt.Println("created folder path " + *ptr)
}
- return xdg_home
} else {
- home := home + ".local/share"
- if _, err := os.Stat(home); os.IsNotExist(err) {
- if err := os.MkdirAll(home, os.ModePerm); err != nil {
- c_die("could not create path " + home, err)
- }
- fmt.Println("created folder path " + home)
+ ptr = &home
+ *ptr = *ptr + ".local/share"
+ if _, err := os.Stat(*ptr); os.IsNotExist(err) {
+ if err := os.MkdirAll(*ptr, os.ModePerm); err != nil {
+ c_die("could not create path " + *ptr, err)
+ }
+ fmt.Println("created folder path " + *ptr)
}
return home
}
+ return *ptr
}