Commit Diff


commit - 28c73ba99b0b295a986f42f6552f0b06b330a769
commit + 2901dc0ec1ec4df1dc82c2cfce0b37aaf25c096e
blob - 807567d10dff2623e0912662721ea40bc963f1f2
blob + 7e3e40336b56a84aae1c6b4e109acb0caf2f029b
--- msearchd/msearchd.c
+++ msearchd/msearchd.c
@@ -283,6 +283,12 @@ main(int argc, char **argv)
 
 	if (root == NULL)
 		root = pw->pw_dir;
+
+	if (!debug)
+		logger = &syslogger;
+
+	if (!debug && !server && daemon(1, 0) == -1)
+		fatal("daemon");
 
 	if (!server) {
 		sigset_t set;
@@ -327,15 +333,9 @@ main(int argc, char **argv)
 	    setresuid(pw->pw_uid, pw->pw_uid, pw->pw_uid) == -1)
 		fatal("failed to drop privileges");
 
-	if (!debug)
-		logger = &syslogger;
-
 	if (server)
 		return (server_main(db));
 
-	if (!debug && daemon(1, 0) == -1)
-		fatal("daemon");
-
 	if (pledge("stdio proc", NULL) == -1)
 		fatal("pledge");