fixed debug output, server exit hang, crashes

This commit is contained in:
Anonymous275 committed 2020-11-07 18:52:03 +02:00
1 parent 5b92cbc0be
commit 2021f0b461
16 files changed
+80 -59

No files matched your search

+15 -13
View File
@@ -50,19 +50,21 @@ void FolderList(const std::string& Path, bool HotSwap) {
[[noreturn]] void HotSwaps(const std::string& path) {
DebugPrintTID();
while (true) {
for (auto& Script : PluginEngine) {
struct stat Info {};
if (stat(Script->GetFileName().c_str(), &Info) != 0) {
Script->SetStopThread(true);
PluginEngine.erase(Script);
info(Sec("[HOTSWAP] Removed : ") + Script->GetFileName().substr(Script->GetFileName().find('\\')));
break;
}
if (Script->GetLastWrite() != fs::last_write_time(Script->GetFileName())) {
Script->SetStopThread(true);
info(Sec("[HOTSWAP] Updated : ") + Script->GetFileName().substr(Script->GetFileName().find('\\')));
Script->SetLastWrite(fs::last_write_time(Script->GetFileName()));
Script->Reload();
if(!PluginEngine.empty()) {
for (auto &Script : PluginEngine) {
struct stat Info{};
if (stat(Script->GetFileName().c_str(), &Info) != 0) {
Script->SetStopThread(true);
PluginEngine.erase(Script);
info(Sec("[HOTSWAP] Removed : ") + Script->GetFileName().substr(Script->GetFileName().find('\\')));
break;
}
if (Script->GetLastWrite() != fs::last_write_time(Script->GetFileName())) {
Script->SetStopThread(true);
info(Sec("[HOTSWAP] Updated : ") + Script->GetFileName().substr(Script->GetFileName().find('\\')));
Script->SetLastWrite(fs::last_write_time(Script->GetFileName()));
Script->Reload();
}
}
}
FolderList(path, true);
+1 -1
View File
@@ -437,7 +437,7 @@ int lua_RemoteEvent(lua_State* L) {
return 0;
}
int lua_ServerExit(lua_State*) {
exit(0);
_Exit(0);
}
int lua_Set(lua_State* L) {
int Args = lua_gettop(L);