Save on cntrl+c interupt

This commit is contained in:
EntireTwix 2021-05-19 13:30:19 -07:00
parent 47319ae412
commit 95bf549427

View file

@ -5,9 +5,21 @@
#include <unistd.h>
#include "bank_f.hpp"
#include <signal.h>
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
using namespace std::chrono;
using namespace drogon;
void SaveSig(int s)
{
bank.Save();
std::cout<<"\nSaving on close...\n";
exit(1);
}
int main(int argc, char **argv)
{
if (argc != 4)
@ -24,6 +36,15 @@ int main(int argc, char **argv)
//Loading users from users.json
bank.Load();
//Sig handling
struct sigaction sigIntHandler;
sigIntHandler.sa_handler = SaveSig;
sigemptyset(&sigIntHandler.sa_mask);
sigIntHandler.sa_flags = 0;
sigaction(SIGINT, &sigIntHandler, NULL);
//Admin Password
bank.admin_pass = argv[1];