Only check errno if getpwuid() fails

Checking errno otherwise is unspecified.
This commit is contained in:
sin 2014-07-09 14:40:49 +01:00
parent 9db14b10dd
commit 8745098fa4

10
slock.c
View file

@ -67,10 +67,12 @@ getpw(void) { /* only run as root */
errno = 0; errno = 0;
pw = getpwuid(getuid()); pw = getpwuid(getuid());
if (errno) if (!pw) {
die("slock: getpwuid: %s\n", strerror(errno)); if (errno)
else if (!pw) die("slock: getpwuid: %s\n", strerror(errno));
die("slock: cannot retrieve password entry (make sure to suid or sgid slock)\n"); else
die("slock: cannot retrieve password entry (make sure to suid or sgid slock)\n");
}
endpwent(); endpwent();
rval = pw->pw_passwd; rval = pw->pw_passwd;