summaryrefslogtreecommitdiff
path: root/src/init.cpp
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2012-04-22 02:57:17 -0400
committerAdam <Adam@anope.org>2012-04-22 02:57:17 -0400
commitfc00406079860043408499e26e9d8fcad49bffd6 (patch)
tree458d6e4a2a3fc9eedf411e7e35d17abb90e0fd77 /src/init.cpp
parent7372b457cc355f750631860d2d85d13e0089a72a (diff)
Fixed ./services --version etc not getting printed when stdout is a file/pipe/not a tty
Diffstat (limited to 'src/init.cpp')
-rw-r--r--src/init.cpp9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/init.cpp b/src/init.cpp
index 4fc9c1eef..55ad04bae 100644
--- a/src/init.cpp
+++ b/src/init.cpp
@@ -252,12 +252,9 @@ void Fork()
#ifndef _WIN32
kill(getppid(), SIGUSR2);
- if (isatty(fileno(stdout)))
- fclose(stdout);
- if (isatty(fileno(stdin)))
- fclose(stdin);
- if (isatty(fileno(stderr)))
- fclose(stderr);
+ freopen("/dev/null", "r", stdin);
+ freopen("/dev/null", "w", stdout);
+ freopen("/dev/null", "w", stderr);
setpgid(0, 0);
#else