]> git.stg.codes - stg.git/blobdiff - projects/stargazer/main.cpp
Initialize some members in initialization lists
[stg.git] / projects / stargazer / main.cpp
index 5f4c7f24c09230a831eaa72edd1770e87752596a..5b4a06fcfed7983190781c919d8c72727ae4d714 100644 (file)
@@ -35,6 +35,7 @@
 #include <csignal>
 #include <cerrno>
 #include <cstdio>
+#include <cstdlib> // srandom, exit
 #include <fstream>
 #include <vector>
 #include <set>
@@ -53,6 +54,8 @@
 #include "users_impl.h"
 #include "admins_impl.h"
 #include "tariffs_impl.h"
+#include "services_impl.h"
+#include "corps_impl.h"
 #include "traffcounter_impl.h"
 #include "plugin_runner.h"
 #include "store_loader.h"
@@ -90,8 +93,8 @@ return lhs.GetStopPosition() > rhs.GetStopPosition();
 class STG_STOPPER
 {
 public:
-    STG_STOPPER() { nonstop = true; }
-    bool    GetStatus() const { return nonstop; };
+    STG_STOPPER() : nonstop(true) {}
+    bool    GetStatus() const { return nonstop; }
     #ifdef NO_DAEMON
     void    Stop(const char * __file__, int __line__)
     #else
@@ -346,12 +349,12 @@ switch (executerPid)
 
     case 0:
         delete settings;
-        Executer(msgKey, *msgID, executerPid, procName);
+        Executer(*msgID, executerPid, procName);
         return 1;
 
     default:
         if (executersPid.empty()) {
-            Executer(msgKey, *msgID, executerPid, NULL);
+            Executer(*msgID, executerPid, NULL);
         }
         executersPid.insert(executerPid);
     }
@@ -445,6 +448,8 @@ TARIFFS_IMPL * tariffs = NULL;
 ADMINS_IMPL * admins = NULL;
 USERS_IMPL * users = NULL;
 TRAFFCOUNTER_IMPL * traffCnt = NULL;
+SERVICES_IMPL * services = NULL;
+CORPORATIONS_IMPL * corps = NULL;
 int msgID = -11;
 
     {
@@ -542,6 +547,8 @@ tariffs = new TARIFFS_IMPL(dataStore);
 admins = new ADMINS_IMPL(dataStore);
 users = new USERS_IMPL(settings, dataStore, tariffs, admins->GetSysAdmin());
 traffCnt = new TRAFFCOUNTER_IMPL(users, settings->GetRulesFileName());
+services = new SERVICES_IMPL(dataStore);
+corps = new CORPORATIONS_IMPL(dataStore);
 traffCnt->SetMonitorDir(settings->GetMonitorDir());
 
 modSettings = settings->GetModulesSettings();
@@ -559,6 +566,8 @@ for (size_t i = 0; i < modSettings.size(); i++)
                       admins,
                       tariffs,
                       users,
+                      services,
+                      corps,
                       traffCnt,
                       dataStore,
                       settings)
@@ -620,11 +629,11 @@ srandom(stgTime);
  *
  * (c) man 2 nice
  */
-errno = 0;
+/*errno = 0;
 if (nice(-19) && errno) {
     printfd(__FILE__, "nice failed: '%s'\n", strerror(errno));
     WriteServLog("nice failed: '%s'", strerror(errno));
-}
+}*/
 
 WriteServLog("Stg started successfully.");
 WriteServLog("+++++++++++++++++++++++++++++++++++++++++++++");
@@ -725,6 +734,8 @@ KillExecuters();
 StopStgTimer();
 WriteServLog("StgTimer: Stop successfull.");
 
+delete corps;
+delete services;
 delete traffCnt;
 delete users;
 delete admins;