diff options
Diffstat (limited to 'src/xrdb.c')
-rw-r--r-- | src/xrdb.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/xrdb.c b/src/xrdb.c index 112badf3629..9ab9f87e915 100644 --- a/src/xrdb.c +++ b/src/xrdb.c @@ -288,20 +288,17 @@ magic_file_p (string, string_len, class, escaped_suffix, suffix) static char * gethomedir () { - int uid; struct passwd *pw; char *ptr; char *copy; if ((ptr = getenv ("HOME")) == NULL) { - if ((ptr = getenv ("USER")) != NULL) + if ((ptr = getenv ("LOGNAME")) != NULL + || (ptr = getenv ("USER")) != NULL) pw = getpwnam (ptr); else - { - uid = getuid (); - pw = getpwuid (uid); - } + pw = getpwuid (getuid ()); if (pw) ptr = pw->pw_dir; |