On second ctrlc immediately die
This commit is contained in:
+12
-2
@@ -37,10 +37,20 @@
|
||||
|
||||
std::atomic<bool> ctrlc_request;
|
||||
|
||||
|
||||
void cancel_request(void)
|
||||
{
|
||||
if (ctrlc_request)
|
||||
{
|
||||
exit(1); // Already asked to quit once, lets immediately die
|
||||
}
|
||||
ctrlc_request = true;
|
||||
}
|
||||
|
||||
#if defined(_WIN32)
|
||||
BOOL WINAPI console_handler(DWORD ctrl_type) {
|
||||
if (ctrl_type == CTRL_C_EVENT) {
|
||||
ctrlc_request = true;
|
||||
cancel_request();
|
||||
return TRUE;
|
||||
}
|
||||
return FALSE;
|
||||
@@ -52,7 +62,7 @@ void setup_signal_handler() {
|
||||
#else
|
||||
void signalHandler(int signal) {
|
||||
if (signal == SIGINT) {
|
||||
ctrlc_request = true;
|
||||
cancel_request();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user