From d551fa7b3e0fd711794c5d490977fda30ba13d6f Mon Sep 17 00:00:00 2001 From: Qball Cow Date: Sun, 19 Aug 2007 16:42:52 +0000 Subject: Adding the simple patch 1534 git-svn-id: https://svn.musicpd.org/mpd/branches/q-mpd@6762 09075e82-0dd4-0310-85a5-a0d7c8717e4f --- src/log.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/log.c b/src/log.c index 7701da3a5..72c58622e 100644 --- a/src/log.c +++ b/src/log.c @@ -40,7 +40,13 @@ static const char *err_filename; /* redirect stdin to /dev/null to work around a libao bug */ static void redirect_stdin(void) { - int fd; + int fd, st; + struct stat ss; + + if ((st = fstat(STDIN_FILENO, &ss)) < 0 || /* If STDIN is already closed (e.g. mpd launched in a non-interactive shell) */ + ! isatty(STDIN_FILENO)) { /* ... or FD 0 does not correspond to a tty device */ + return; /* ... do nothing and return. */ + } if ((fd = open("/dev/null", O_RDONLY)) < 0) FATAL("failed to open /dev/null %s\n", strerror(errno)); if (dup2(fd, STDIN_FILENO) < 0) -- cgit v1.2.3