From 303afe90f2f989e8a824a35180a2c8dcd3119c99 Mon Sep 17 00:00:00 2001 From: Timo Sirainen Date: Thu, 10 Feb 2011 03:03:28 +0200 Subject: [PATCH] master: Change stderr to /dev/null just before forking. --- src/master/main.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/master/main.c b/src/master/main.c index add90d488d..54925e3263 100644 --- a/src/master/main.c +++ b/src/master/main.c @@ -771,14 +771,17 @@ int main(int argc, char *argv[]) if (services_listen(services) <= 0) i_fatal("Failed to start listeners"); - if (!foreground) - daemonize(); if (chdir(set->base_dir) < 0) i_fatal("chdir(%s) failed: %m", set->base_dir); + if (dup2(null_fd, STDERR_FILENO) < 0) + i_fatal("dup2(null_fd) failed: %m"); i_set_fatal_handler(master_fatal_callback); i_set_error_handler(orig_error_callback); + if (!foreground) + daemonize(); + main_init(set); master_service_run(master_service, NULL); main_deinit(); -- 2.47.3