]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - win/inspircd_namedpipe.cpp
Add contents of LDFLAGS in addition to CXXFLAGS
[user/henk/code/inspircd.git] / win / inspircd_namedpipe.cpp
index f86af73e23b6a48fafbd054ebdd0ff2f9be31ee3..93d7c423a1cbeb7690bebbf8674b7e9d23e72fd4 100644 (file)
@@ -8,7 +8,8 @@
 \r
 IPCThread::IPCThread(InspIRCd* Instance) : Thread(), ServerInstance(Instance)\r
 {\r
-       initwmi();\r
+       if (!initwmi())\r
+               ServerInstance->Logs->Log("IPC", DEBUG, "Could not initialise WMI. CPU percantage reports will not be available.");\r
 }\r
 \r
 IPCThread::~IPCThread()\r
@@ -23,19 +24,19 @@ void IPCThread::Run()
        while (GetExitFlag() == false)\r
        {\r
                Pipe = CreateNamedPipe (Pipename,\r
-                                          PIPE_ACCESS_DUPLEX, // read/write access\r
-                                          PIPE_TYPE_MESSAGE | // message type pipe\r
-                                          PIPE_READMODE_MESSAGE | // message-read mode\r
-                                          PIPE_WAIT, // blocking mode\r
-                                          PIPE_UNLIMITED_INSTANCES, // max. instances\r
-                                          MAXBUF, // output buffer size\r
-                                          MAXBUF, // input buffer size\r
-                                          1000, // client time-out\r
-                                          NULL); // no security attribute\r
+                                       PIPE_ACCESS_DUPLEX, // read/write access\r
+                                       PIPE_TYPE_MESSAGE | // message type pipe\r
+                                       PIPE_READMODE_MESSAGE | // message-read mode\r
+                                       PIPE_WAIT, // blocking mode\r
+                                       PIPE_UNLIMITED_INSTANCES, // max. instances\r
+                                       MAXBUF, // output buffer size\r
+                                       MAXBUF, // input buffer size\r
+                                       1000, // client time-out\r
+                                       NULL); // no security attribute\r
 \r
                if (Pipe == INVALID_HANDLE_VALUE)\r
                {\r
-                       SleepEx(500, true);\r
+                       SleepEx(10, true);\r
                        continue;\r
                }\r
 \r
@@ -130,7 +131,7 @@ IPC::IPC(InspIRCd* Srv) : ServerInstance(Srv)
 {\r
        /* The IPC pipe is threaded */\r
        thread = new IPCThread(Srv);\r
-       Srv->Threads->Create(thread);\r
+       Srv->Threads->Start(thread);\r
 }\r
 \r
 void IPC::Check()\r
@@ -160,6 +161,12 @@ void IPC::Check()
                        thread->ClearStatus();\r
                        ServerInstance->Restart("Restarting due to command from GUI");\r
                break;\r
+               case '4':\r
+                       /* Toggle debug */\r
+                       thread->SetResult(0);\r
+                       thread->ClearStatus();\r
+                       ServerInstance->Config->forcedebug = !ServerInstance->Config->forcedebug;\r
+               break;\r
        }\r
 }\r
 \r
@@ -167,4 +174,4 @@ IPC::~IPC()
 {\r
        thread->SetExitFlag();\r
        delete thread;\r
-}
\ No newline at end of file
+}\r