Some more error checking just to be sure - sinit - suckless init
 (HTM) git clone git://git.suckless.org/sinit
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 9ad5329913cf99e5498ddff228d5906f9570e28b
 (DIR) parent 76b2240e1587129d4baefaffb738332440e20290
 (HTM) Author: sin <sin@2f30.org>
       Date:   Fri,  7 Feb 2014 16:46:16 +0000
       
       Some more error checking just to be sure
       
       Diffstat:
         M sinit.c                             |      13 ++++++++-----
       
       1 file changed, 8 insertions(+), 5 deletions(-)
       ---
 (DIR) diff --git a/sinit.c b/sinit.c
       @@ -54,10 +54,13 @@ main(void)
                        return EXIT_FAILURE;
                setsid();
        
       -        sigemptyset(&sigset);
       +        if (sigemptyset(&sigset) < 0)
       +                eprintf("sinit: sigemptyset:");
                for (i = 0; i < LEN(dispatchsig); i++)
       -                sigaddset(&sigset, dispatchsig[i].sig);
       -        sigprocmask(SIG_BLOCK, &sigset, NULL);
       +                if (sigaddset(&sigset, dispatchsig[i].sig) < 0)
       +                        eprintf("sinit: sigaddset:");
       +        if (sigprocmask(SIG_BLOCK, &sigset, NULL) < 0)
       +                eprintf("sinit: sigprocmask:");
        
                sigfd = signalfd(-1, &sigset, 0);
                if (sigfd < 0)
       @@ -74,8 +77,8 @@ main(void)
                        if (ret > 0) {
                                if (FD_ISSET(sigfd, &rfds)) {
                                        n = read(sigfd, &siginfo, sizeof(siginfo));
       -                                if (n <= 0)
       -                                        continue;
       +                                if (n < 0)
       +                                        eprintf("sinit: read:");
                                        for (i = 0; i < LEN(dispatchsig); i++)
                                                if (dispatchsig[i].sig == siginfo.ssi_signo)
                                                        dispatchsig[i].func();