X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=ffi%2Ftrap.c;fp=ffi%2Ftrap.c;h=9d70492cb2b292eb12f7c7935acd62655f478a65;hb=de1d8ed8daec3220c6c1900e9cded36a3e90f4c0;hp=228b2c36f3e96d1122f9b7ec74ed631ca2d8b5c3;hpb=66501b5950881002845adee90c609ae64594a8b9;p=mate.git diff --git a/ffi/trap.c b/ffi/trap.c index 228b2c3..9d70492 100644 --- a/ffi/trap.c +++ b/ffi/trap.c @@ -110,13 +110,13 @@ void register_signal(void) struct sigaction illaction; illaction.sa_sigaction = callertrap; sigemptyset(&illaction.sa_mask); - illaction.sa_flags = SA_SIGINFO | SA_RESTART; + illaction.sa_flags = SA_SIGINFO | SA_RESTART | SA_NODEFER; sigaction(SIGILL, &illaction, NULL); struct sigaction segvaction; segvaction.sa_sigaction = staticfieldtrap; sigemptyset(&segvaction.sa_mask); - segvaction.sa_flags = SA_SIGINFO | SA_RESTART; + segvaction.sa_flags = SA_SIGINFO | SA_RESTART | SA_NODEFER; sigaction(SIGSEGV, &segvaction, NULL); }