Signed-off-by: Karel Zak <kzak@redhat.com>
#include "xalloc.h"
#include "nls.h"
+#define NULL_DEVICE "/dev/null"
+
void setup_pager(void);
static const char *pager_argv[] = { "sh", "-c", NULL, NULL };
static inline void dup_devnull(int to)
{
- int fd = open("/dev/null", O_RDWR);
+ int fd = open(NULL_DEVICE, O_RDWR);
+
+ if (fd < 0)
+ err(EXIT_FAILURE, _("cannot open %s"), NULL_DEVICE);
dup2(fd, to);
close(fd);
}
if (need_in) {
dup2(fdin[0], 0);
close_pair(fdin);
- } else if (cmd->in) {
+ } else if (cmd->in > 0) {
dup2(cmd->in, 0);
close(cmd->in);
}