diff options
author | Joe <rbo@gmx.us> | 2023-12-14 20:20:20 +0100 |
---|---|---|
committer | Joe <rbo@gmx.us> | 2023-12-14 20:20:20 +0100 |
commit | 3f3fba89c0d2197c08ad8c9fdfd695fb675fd03a (patch) | |
tree | 1214cceed260b4218e336e6e2249c11a06cce76c /c_init.go | |
parent | commit (diff) | |
download | hardflip-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.go | 25 |
1 files changed, 14 insertions, 11 deletions
@@ -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 } |