_exit() instead of exit() after failed exec - sent - simple plaintext presentation tool
 (HTM) git clone git://git.suckless.org/sent
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit e8914d5d4bedb12bccf78a930b34b1564b3dbaac
 (DIR) parent cd10166b5eccac1b8cf510a7c97544d1697fbd09
 (HTM) Author: FRIGN <dev@frign.de>
       Date:   Thu, 11 Aug 2016 21:20:07 +0200
       
       _exit() instead of exit() after failed exec
       
       die() calls exit(), but actually at this point the program could be in a
       state not allowing this. It's better to call _exit to stop the libc from
       calling any handlers that might fail at this moment anyway.
       
       Diffstat:
         M sent.c                              |       3 ++-
       
       1 file changed, 2 insertions(+), 1 deletion(-)
       ---
 (DIR) diff --git a/sent.c b/sent.c
       @@ -150,7 +150,8 @@ filter(int fd, const char *cmd)
                        close(fds[0]);
                        close(fds[1]);
                        execlp("sh", "sh", "-c", cmd, (char *)0);
       -                die("sent: execlp sh -c '%s':", cmd);
       +                fprintf(stderr, "sent: execlp sh -c '%s': %s\n", cmd, strerror(errno));
       +                _exit(1);
                }
                close(fds[1]);
                return fds[0];