diff --git a/dMasterServer/MasterServer.cpp b/dMasterServer/MasterServer.cpp index 7b3e8871..72a35f2a 100644 --- a/dMasterServer/MasterServer.cpp +++ b/dMasterServer/MasterServer.cpp @@ -43,6 +43,13 @@ #include "CDZoneTableTable.h" #include "eGameMasterLevel.h" +#ifdef DARKFLAME_PLATFORM_UNIX + +#include +#include + +#endif + namespace Game { Logger* logger = nullptr; dServer* server = nullptr; @@ -455,6 +462,12 @@ int main(int argc, char** argv) { } } +#ifdef DARKFLAME_PLATFORM_UNIX + // kill off dead zombie instances + int status{}; + waitpid(static_cast(-1), &status, WNOHANG); +#endif + t += std::chrono::milliseconds(masterFrameDelta); std::this_thread::sleep_until(t); }