summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/log.c6
-rw-r--r--src/main.c2
2 files changed, 5 insertions, 3 deletions
diff --git a/src/log.c b/src/log.c
index 5d17955e7..7b4db4c77 100644
--- a/src/log.c
+++ b/src/log.c
@@ -50,8 +50,10 @@ void log_close_console(void) {
if (console_fd < 0)
return;
- if (getpid() == 1 || console_fd != STDERR_FILENO) {
- close_nointr_nofail(console_fd);
+ if (getpid() == 1) {
+ if (console_fd >= 3)
+ close_nointr_nofail(console_fd);
+
console_fd = -1;
}
}
diff --git a/src/main.c b/src/main.c
index 311ece6b5..2e754fe6e 100644
--- a/src/main.c
+++ b/src/main.c
@@ -175,7 +175,7 @@ static void install_crash_handler(void) {
static int make_null_stdio(void) {
int null_fd, r;
- if ((null_fd = open("/dev/null", O_RDWR)) < 0) {
+ if ((null_fd = open("/dev/null", O_RDWR|O_NOCTTY)) < 0) {
log_error("Failed to open /dev/null: %m");
return -errno;
}