SIGTERM and other signal handling

This commit is contained in:
EntireTwix 2021-11-22 17:04:45 -08:00
parent 1d76bc54bd
commit 8c911675c7

View file

@ -79,11 +79,9 @@ int main(int argc, char **argv)
//Sig handling //Sig handling
struct sigaction sigIntHandler; struct sigaction sigIntHandler;
sigIntHandler.sa_handler = SaveSig; sigIntHandler.sa_handler = SaveSig;
sigemptyset(&sigIntHandler.sa_mask); sigemptyset(&sigIntHandler.sa_mask);
sigIntHandler.sa_flags = 0; sigIntHandler.sa_flags = 0;
sigaction(SIGINT, &sigIntHandler, NULL); sigaction(SIGINT, &sigIntHandler, NULL);
//Admin account //Admin account
@ -93,7 +91,8 @@ int main(int argc, char **argv)
const unsigned long saving_freq = std::stoul(std::string(argv[2])); const unsigned long saving_freq = std::stoul(std::string(argv[2]));
if (saving_freq) //if saving frequency is 0 then auto saving is turned off if (saving_freq) //if saving frequency is 0 then auto saving is turned off
{ {
std::thread([saving_freq]() { std::thread([saving_freq]()
{
while (1) while (1)
{ {
std::this_thread::sleep_for(std::chrono::minutes(saving_freq)); std::this_thread::sleep_for(std::chrono::minutes(saving_freq));
@ -112,5 +111,7 @@ int main(int argc, char **argv)
#endif #endif
.run(); .run();
SaveSig(0);
return 0; return 0;
} }