changeset 72341:111c88ecd861

* keyboard.c: Define in_sighandler. (input_available_signal): Set in_sighandler.
author Jan Djärv <jan.h.d@swipnet.se>
date Thu, 10 Aug 2006 06:07:15 +0000
parents abd170e8dcbe
children 428ee64b35d5
files src/keyboard.c
diffstat 1 files changed, 7 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/keyboard.c	Thu Aug 10 06:06:48 2006 +0000
+++ b/src/keyboard.c	Thu Aug 10 06:07:15 2006 +0000
@@ -100,6 +100,9 @@
 /* File descriptor to use for input.  */
 extern int input_fd;
 
+/* Nonzero if we are executing from the SIGIO signal handler. */
+int in_sighandler;
+
 #ifdef HAVE_WINDOW_SYSTEM
 /* Make all keyboard buffers much bigger when using X windows.  */
 #ifdef MAC_OS8
@@ -6924,6 +6927,8 @@
   SIGNAL_THREAD_CHECK (signo);
 #endif
 
+  in_sighandler = 1;
+
   if (input_available_clear_time)
     EMACS_SET_SECS_USECS (*input_available_clear_time, 0, 0);
 
@@ -6935,6 +6940,7 @@
   sigfree ();
 #endif
   errno = old_errno;
+  in_sighandler = 0;
 }
 #endif /* SIGIO */
 
@@ -10802,6 +10808,7 @@
   do_mouse_tracking = Qnil;
 #endif
   input_pending = 0;
+  in_sighandler = 0;
 
   /* This means that command_loop_1 won't try to select anything the first
      time through.  */