X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/468b7c5691bc378395915cf08ced610409c0323d..b8e62274efa1ed7f13bc6f8ab27e97d9eb6a73f0:/projects/stargazer/main.cpp

diff --git a/projects/stargazer/main.cpp b/projects/stargazer/main.cpp
index 11f4c723..702bfb86 100644
--- a/projects/stargazer/main.cpp
+++ b/projects/stargazer/main.cpp
@@ -266,6 +266,11 @@ for (size_t i = 0; i < settings.GetExecutersNum(); i++)
 
 PIDFile pidFile(settings.GetPIDFileName());
 
+struct sigaction sa;
+memset(&sa, 0, sizeof(sa));
+sa.sa_handler = SIG_DFL;
+sigaction(SIGHUP, &sa, NULL); // Apparently FreeBSD ignores SIGHUP by default when launched from rc.d at bot time.
+
 sigset_t signalSet;
 sigfillset(&signalSet);
 pthread_sigmask(SIG_BLOCK, &signalSet, NULL);
@@ -341,16 +346,10 @@ while (running)
             {
             SETTINGS_IMPL newSettings(settings);
             if (newSettings.ReadSettings())
-                {
-                if (newSettings.GetLogFileName() != "")
-                    WriteServLog.SetLogFileName(newSettings.GetLogFileName());
-
                 WriteServLog("ReadSettings error. %s", newSettings.GetStrError().c_str());
-                }
             else
-                {
                 settings = newSettings;
-                }
+            WriteServLog.SetLogFileName(settings.GetLogFileName());
             traffCnt.Reload();
             manager.reload(settings);
             }