Fix handling of m_RequestRestart in RunEventLoop, improve reload timeout

Refs #5788
This commit is contained in:
Gerd von Egidy 2014-04-28 23:30:56 +02:00 committed by Gunnar Beutner
parent 3ece2ba643
commit 9f56b6ee74
1 changed files with 11 additions and 11 deletions

View File

@ -240,19 +240,19 @@ mainloop:
}
lastLoop = now;
if (m_RequestRestart) {
m_RequestRestart = false; // we are now handling the request, once is enough
}
// are we already restarting? ignore request if we already are
if (m_Restarting)
goto mainloop;
m_Restarting = true;
StartReloadProcess();
if (m_RequestRestart) {
m_RequestRestart = false; // we are now handling the request, once is enough
// are we already restarting? ignore request if we already are
if (m_Restarting)
goto mainloop;
}
m_Restarting = true;
StartReloadProcess();
goto mainloop;
}
Log(LogInformation, "base", "Shutting down Icinga...");
@ -289,7 +289,7 @@ void Application::StartReloadProcess(void) const
Process::Ptr process = make_shared<Process>(args);
process->SetTimeout(15);
process->SetTimeout(300);
process->Run(boost::bind(&Application::ReloadProcessCallback, _1));
}