Mercurial > hg > xemacs-beta
diff src/signal.c @ 223:2c611d1463a6 r20-4b10
Import from CVS: tag r20-4b10
author | cvs |
---|---|
date | Mon, 13 Aug 2007 10:10:54 +0200 |
parents | 41ff10fd062f |
children | 677f6a0ee643 |
line wrap: on
line diff
--- a/src/signal.c Mon Aug 13 10:10:03 2007 +0200 +++ b/src/signal.c Mon Aug 13 10:10:54 2007 +0200 @@ -180,6 +180,9 @@ it needs to stay the way it is. */ quit_check_signal_happened = 1; +#ifdef _WIN32 + can_break_system_calls = 0; +#else /* can_break_system_calls is set when we want to break out of non-interruptible system calls. */ if (can_break_system_calls) @@ -192,6 +195,7 @@ EMACS_REESTABLISH_SIGNAL (signo, alarm_signal); LONGJMP (break_system_call_jump, 0); } +#endif EMACS_REESTABLISH_SIGNAL (signo, alarm_signal); SIGRETURN; @@ -207,7 +211,10 @@ went off. Rather than put the code in to compute this specially, we just set this flag. Should fix this. */ quit_check_signal_happened = 1; + +#ifdef HAVE_UNIXOID_EVENT_LOOP signal_fake_event (); +#endif EMACS_REESTABLISH_SIGNAL (signo, alarm_signal); SIGRETURN; @@ -438,7 +445,9 @@ /* Else request quit when it's safe */ Vquit_flag = Qt; sigint_happened = 1; +#ifdef HAVE_UNIXOID_EVENT_LOOP signal_fake_event (); +#endif } errno = old_errno; SIGRETURN;