X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/73ff7639310df077f88658e53095670710099f53..c94bf8a43922c544b485e50ea1f37f41a45821f5:/projects/sgauth/web.cpp

diff --git a/projects/sgauth/web.cpp b/projects/sgauth/web.cpp
index 6b49b325..61cd2b58 100644
--- a/projects/sgauth/web.cpp
+++ b/projects/sgauth/web.cpp
@@ -23,11 +23,13 @@
  $Date: 2010/03/15 12:58:17 $
  */
 
-#include <stdio.h>
-#include <string.h>
-#include <time.h>
 #include <libintl.h>
 
+#include <csignal>
+#include <cstdio>
+#include <cstring>
+#include <ctime>
+
 #include "stg/common.h"
 #include "stg/ia.h"
 #include "web.h"
@@ -42,10 +44,15 @@ extern IA_CLIENT_PROT * clnp;
 //---------------------------------------------------------------------------
 #ifndef WIN32
 void * RunWeb(void *)
+{
+sigset_t signalSet;
+sigfillset(&signalSet);
+pthread_sigmask(SIG_BLOCK, &signalSet, NULL);
+
 #else
 unsigned long WINAPI RunWeb(void *)
-#endif
 {
+#endif
 while (1)
     web->Run();
 return NULL;
@@ -66,6 +73,8 @@ for (int i = 0; i < DIR_NUM; i++)
     dirName[i] = "-";
 
 refreshPeriod = 5;
+
+memset(&ls, 0, sizeof(ls));
 }
 //---------------------------------------------------------------------------
 void WEB::Start()
@@ -180,7 +189,8 @@ while (1)
         #ifdef WIN32
         Sleep(1000);
         #else
-        usleep(1000000);
+        struct timespec ts = {1, 0};
+        nanosleep(&ts, NULL);
         #endif
         exit(0);
         }