Restore the state from before running the subprocess.
Signed-off-by: Bartosz Golaszewski <bartekgola@gmail.com>
        struct signalfd_siginfo sinfo;
        struct gpiotool_proc *proc;
        struct pollfd pfd;
+       sigset_t sigmask;
        int status;
        ssize_t rd;
 
        else if (rd != sizeof(sinfo))
                die("invalid size of signal info");
 
+       sigemptyset(&sigmask);
+       sigaddset(&sigmask, SIGCHLD);
+
+       status = sigprocmask(SIG_UNBLOCK, &sigmask, NULL);
+       if (status)
+               die_perr("unable to unblock signals");
+
        gpiotool_readall(proc->stdout_fd, &proc->stdout);
        gpiotool_readall(proc->stderr_fd, &proc->stderr);