improve signal handling.

This commit is contained in:
Vitor Santos Costa
2017-07-24 18:17:51 +01:00
parent 530d73c470
commit 22837d498b
5 changed files with 30 additions and 24 deletions

View File

@@ -317,8 +317,10 @@ static bool set_fpu_exceptions(Term flag) {
static void ReceiveSignal(int s, void *x, void *y) {
CACHE_REGS
LOCAL_PrologMode |= InterruptMode;
printf("11ooo\n");
my_signal(s, ReceiveSignal);
if (s == SIGINT && (LOCAL_PrologMode & ConsoleGetcMode)) {
return;
}
my_signal(s, ReceiveSignal);
switch (s) {
case SIGINT:
// always direct SIGINT to console