X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/75547270769394b15e275f4817a824dd75ae3f05..2e04025761ba7c7fdd33f81f2b627c4b2ace1ef8:/projects/stargazer/main.cpp diff --git a/projects/stargazer/main.cpp b/projects/stargazer/main.cpp index b8857633..644fed91 100644 --- a/projects/stargazer/main.cpp +++ b/projects/stargazer/main.cpp @@ -221,7 +221,6 @@ if (getuid()) } SETTINGS_IMPL settings(argc == 2 ? argv[1] : ""); -SETTINGS_IMPL newSettings = settings; if (settings.ReadSettings()) { @@ -339,6 +338,8 @@ while (running) switch (sig) { case SIGHUP: + { + SETTINGS_IMPL newSettings(settings); if (newSettings.ReadSettings()) { STG_LOGGER & WriteServLog = GetStgLogger(); @@ -347,10 +348,14 @@ while (running) WriteServLog.SetLogFileName(newSettings.GetLogFileName()); WriteServLog("ReadSettings error. %s", newSettings.GetStrError().c_str()); - return -1; + } + else + { + settings = newSettings; } traffCnt.Reload(); - manager.reload(); + manager.reload(settings); + } break; case SIGTERM: running = false; @@ -374,6 +379,8 @@ while (running) WriteServLog("+++++++++++++++++++++++++++++++++++++++++++++"); +manager.stop(); + if (loop.Stop()) WriteServLog("Event loop not stopped.");