Only check errno if getpw*() fails - smdev - suckless mdev
 (HTM) git clone git://git.suckless.org/smdev
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 8296616c9491377f54b82f3fb4ddf4b34b387c4e
 (DIR) parent 230e1118843ba0d3acc70c7746a5a22026b25769
 (HTM) Author: sin <sin@2f30.org>
       Date:   Wed,  9 Jul 2014 14:45:36 +0100
       
       Only check errno if getpw*() fails
       
       Diffstat:
         M smdev.c                             |      24 ++++++++++++++----------
       
       1 file changed, 14 insertions(+), 10 deletions(-)
       ---
 (DIR) diff --git a/smdev.c b/smdev.c
       @@ -288,19 +288,23 @@ createdev(struct event *ev)
        
                errno = 0;
                pw = getpwnam(rule->user);
       -        if (errno)
       -                eprintf("getpwnam %s:", rule->user);
       -        else if (!pw)
       -                enprintf(1, "getpwnam %s: no such user\n",
       -                         rule->user);
       +        if (!pw) {
       +                if (errno)
       +                        eprintf("getpwnam %s:", rule->user);
       +                else
       +                        enprintf(1, "getpwnam %s: no such user\n",
       +                                 rule->user);
       +        }
        
                errno = 0;
                gr = getgrnam(rule->group);
       -        if (errno)
       -                eprintf("getgrnam %s:", rule->group);
       -        else if (!gr)
       -                enprintf(1, "getgrnam %s: no such group\n",
       -                         rule->group);
       +        if (!gr) {
       +                if (errno)
       +                        eprintf("getgrnam %s:", rule->group);
       +                else
       +                        enprintf(1, "getgrnam %s: no such group\n",
       +                                 rule->group);
       +        }
        
                if (chown(rpath.path, pw->pw_uid, gr->gr_gid) < 0)
                        eprintf("chown %s:", rpath.path);