29 lines
325 B
Go
29 lines
325 B
Go
package dbus
|
|
|
|
import (
|
|
"os"
|
|
"sync"
|
|
)
|
|
|
|
var (
|
|
homeDir string
|
|
homeDirLock sync.Mutex
|
|
)
|
|
|
|
func getHomeDir() string {
|
|
homeDirLock.Lock()
|
|
defer homeDirLock.Unlock()
|
|
|
|
if homeDir != "" {
|
|
return homeDir
|
|
}
|
|
|
|
homeDir = os.Getenv("HOME")
|
|
if homeDir != "" {
|
|
return homeDir
|
|
}
|
|
|
|
homeDir = lookupHomeDir()
|
|
return homeDir
|
|
}
|