clena exit on ^C

This commit is contained in:
Glenn Maynard
2004-01-03 06:50:23 +00:00
parent adf2e68f2a
commit 09d6eb2ab8
@@ -3,6 +3,7 @@
#include "RageLog.h" #include "RageLog.h"
#include "SignalHandler.h" #include "SignalHandler.h"
#include "GetSysInfo.h" #include "GetSysInfo.h"
#include "StepMania.h"
#include <unistd.h> #include <unistd.h>
#include <sys/mman.h> #include <sys/mman.h>
@@ -35,7 +36,7 @@ SaveSignals::SaveSignals()
{ {
struct sigaction sa; struct sigaction sa;
sigaction(signals[i], NULL, &sa); sigaction(signals[i], NULL, &sa);
old_handlers.push_back(sa); old_handlers.push_back(sa);
} }
} }
@@ -48,6 +49,13 @@ SaveSignals::~SaveSignals()
static void SigHandler(int sig) static void SigHandler(int sig)
{ {
if( sig == SIGINT || sig == SIGQUIT )
{
/* ^C. */
ExitGame();
return;
}
for(unsigned i = 0; i < handlers.size(); ++i) for(unsigned i = 0; i < handlers.size(); ++i)
handlers[i](sig); handlers[i](sig);