]> git.stg.codes - stg.git/blobdiff - projects/stargazer/main.cpp
Do not log about successful plugin stop if error occures
[stg.git] / projects / stargazer / main.cpp
index 80ec465b709bbeef47a85ae96553c0f53ba80f5b..4fff88a16de7c82a094ca54ba2c3f094c2223bf6 100644 (file)
@@ -46,9 +46,7 @@
 #include "stg/plugin.h"
 #include "stg/logger.h"
 #include "stg/scriptexecuter.h"
 #include "stg/plugin.h"
 #include "stg/logger.h"
 #include "stg/scriptexecuter.h"
-#include "stg/conffiles.h"
 #include "stg/version.h"
 #include "stg/version.h"
-#include "stg/pinger.h"
 #include "stg_timer.h"
 #include "settings_impl.h"
 #include "users_impl.h"
 #include "stg_timer.h"
 #include "settings_impl.h"
 #include "users_impl.h"
@@ -101,7 +99,11 @@ else
     }
 }
 //-----------------------------------------------------------------------------
     }
 }
 //-----------------------------------------------------------------------------
+#ifdef LINUX
 int StartScriptExecuter(char * procName, int msgKey, int * msgID, SETTINGS_IMPL * settings)
 int StartScriptExecuter(char * procName, int msgKey, int * msgID, SETTINGS_IMPL * settings)
+#else
+int StartScriptExecuter(char *, int msgKey, int * msgID, SETTINGS_IMPL * settings)
+#endif
 {
 STG_LOGGER & WriteServLog = GetStgLogger();
 
 {
 STG_LOGGER & WriteServLog = GetStgLogger();
 
@@ -142,12 +144,20 @@ switch (executerPid)
 
     case 0:
         delete settings;
 
     case 0:
         delete settings;
+#ifdef LINUX
         Executer(*msgID, executerPid, procName);
         Executer(*msgID, executerPid, procName);
+#else
+        Executer(*msgID, executerPid);
+#endif
         return 1;
 
     default:
         if (executersPid.empty()) {
         return 1;
 
     default:
         if (executersPid.empty()) {
+#ifdef LINUX
             Executer(*msgID, executerPid, NULL);
             Executer(*msgID, executerPid, NULL);
+#else
+            Executer(*msgID, executerPid);
+#endif
         }
         executersPid.insert(executerPid);
     }
         }
         executersPid.insert(executerPid);
     }
@@ -161,11 +171,11 @@ int ForkAndWait(const string &)
 #endif
 {
 #ifndef NO_DAEMON
 #endif
 {
 #ifndef NO_DAEMON
-stgChildPid = fork();
+pid_t childPid = fork();
 string startFile = confDir + START_FILE;
 unlink(startFile.c_str());
 
 string startFile = confDir + START_FILE;
 unlink(startFile.c_str());
 
-switch (stgChildPid)
+switch (childPid)
     {
     case -1:
         return -1;
     {
     case -1:
         return -1;
@@ -286,6 +296,10 @@ for (size_t i = 0; i < settings->GetExecutersNum(); i++)
 
 PIDFile pidFile(settings->GetPIDFileName());
 
 
 PIDFile pidFile(settings->GetPIDFileName());
 
+sigset_t signalSet;
+sigfillset(&signalSet);
+pthread_sigmask(SIG_BLOCK, &signalSet, NULL);
+
 StartTimer();
 WaitTimer();
 if (!IsStgTimerRunning())
 StartTimer();
 WaitTimer();
 if (!IsStgTimerRunning())
@@ -393,10 +407,6 @@ WriteServLog("+++++++++++++++++++++++++++++++++++++++++++++");
 creat(startFile.c_str(), S_IRUSR);
 #endif
 
 creat(startFile.c_str(), S_IRUSR);
 #endif
 
-sigset_t signalSet;
-sigfillset(&signalSet);
-pthread_sigmask(SIG_BLOCK, &signalSet, NULL);
-
 while (true)
     {
     sigfillset(&signalSet);
 while (true)
     {
     sigfillset(&signalSet);
@@ -468,7 +478,10 @@ while (modIter != modules.end())
                      modIter->GetStrError().c_str());
         printfd(__FILE__, "Failed to stop module '%s'\n", name.c_str());
         }
                      modIter->GetStrError().c_str());
         printfd(__FILE__, "Failed to stop module '%s'\n", name.c_str());
         }
-    WriteServLog("Module: \'%s\'. Stop successfull.", modIter->GetPlugin()->GetVersion().c_str());
+    else
+        {
+        WriteServLog("Module: \'%s\'. Stop successfull.", modIter->GetPlugin()->GetVersion().c_str());
+        }
     ++modIter;
     }
 
     ++modIter;
     }