diff src/keyboard.c @ 1119:5d315d54b8b4

* keyboard.c (kbd_buffer_get_event): When performing the FRAME_FOCUS_FRAME redirection, don't modify the frame field of the event; that fatally corrupts mouse click events. Instead, just perform the redirection on the value assigned to Vlast_event_frame. * keyboard.c (input_available_signal): Declare this to return SIGTYPE.
author Jim Blandy <jimb@redhat.com>
date Sun, 13 Sep 1992 12:31:15 +0000
parents f3a7122a68e1
children 5c36807e445c
line wrap: on
line diff
--- a/src/keyboard.c	Sun Sep 13 12:29:01 1992 +0000
+++ b/src/keyboard.c	Sun Sep 13 12:31:15 1992 +0000
@@ -1587,13 +1587,10 @@
     {
       if (kbd_fetch_ptr == kbd_buffer + KBD_BUFFER_SIZE)
 	kbd_fetch_ptr = kbd_buffer;
-      /* Do the redirection specified by the focus_frame
-	 member now, before we return this event.  */
-      kbd_fetch_ptr->frame
-	= XFRAME (FRAME_FOCUS_FRAME (kbd_fetch_ptr->frame));
 
 #ifdef MULTI_FRAME
-      XSET (Vlast_event_frame, Lisp_Frame, kbd_fetch_ptr->frame);
+      XSET (Vlast_event_frame, Lisp_Frame,
+	    XFRAME (FRAME_FOCUS_FRAME (kbd_fetch_ptr->frame)));
 #endif
 
       last_event_timestamp = kbd_fetch_ptr->timestamp;
@@ -2212,6 +2209,7 @@
 #ifdef SIGIO   /* for entire page */
 /* Note SIGIO has been undef'd if FIONREAD is missing.  */
 
+SIGTYPE
 input_available_signal (signo)
      int signo;
 {