opportunistic absolute file path

This commit is contained in:
Roy Olav Purser 2021-03-25 11:08:26 +01:00
parent 38306fd9a3
commit 108cd021d1
No known key found for this signature in database
GPG Key ID: 0BA77797F072BC52

View File

@ -2,7 +2,8 @@ package envconf
import ("strconv" import ("strconv"
"fmt" "fmt"
"errors" "errors"
"path/filepath" "os"
"path"
"time") "time")
func parseInt(key string, str string)(ret cValue) { func parseInt(key string, str string)(ret cValue) {
@ -35,12 +36,16 @@ func parseBool(key string, str string)(ret cValue) {
return return
} }
func parseDirectory(key string, str string)(ret cValue) { func parseDirectory(_ string, str string)(ret cValue) {
val, err := filepath.Abs(str) wd, err := os.Getwd()
if err == nil { if err == nil {
ret.strval = val if path.IsAbs(str) {
ret.strval = path.Clean(str)
} else { } else {
ret.err = errors.New(fmt.Sprintf(`Environment variable "%s" is not of type directory.`, key)) ret.strval = path.Join(wd, str)
}
} else {
ret.strval = path.Clean(str)
} }
return return
} }