2002-08-04 Andrew Choi <akochoi@shaw.ca>
authorAndrew Choi <akochoi@shaw.ca>
Sun, 4 Aug 2002 19:29:06 +0000 (19:29 +0000)
committerAndrew Choi <akochoi@shaw.ca>
Sun, 4 Aug 2002 19:29:06 +0000 (19:29 +0000)
        * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
        returns a valid window pointer before proceeding for keyDown and
        autoKey events.

src/ChangeLog
src/macterm.c

index c69c37c..d7b616e 100644 (file)
@@ -1,3 +1,9 @@
+2002-08-04  Andrew Choi  <akochoi@shaw.ca>
+
+       * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
+       returns a valid window pointer before proceeding for keyDown and
+       autoKey events.
+
 2002-08-03  Andrew Choi  <akochoi@shaw.ca>
 
        * macterm.c (USE_CARBON_EVENTS): New macro.
index c00c288..e9cb1b0 100644 (file)
@@ -12610,7 +12610,9 @@ XTread_socket (int sd, struct input_event *bufp, int numchars, int expected)
 
 #if USE_CARBON_EVENTS
   rneResult = ReceiveNextEvent (0, NULL, 
-                               expected ? TicksToEventTime(app_sleep_time) : 0,
+                               expected
+                               ? TicksToEventTime (app_sleep_time)
+                               : 0,
                                true, &eventRef);
   if (!rneResult)
     {
@@ -12869,6 +12871,13 @@ XTread_socket (int sd, struct input_event *bufp, int numchars, int expected)
          int keycode = (er.message & keyCodeMask) >> 8;
          int xkeysym;
          
+         if (!IsValidWindowPtr (FrontNonFloatingWindow ()))
+           {
+             SysBeep (1);
+             UNBLOCK_INPUT;
+             return 0;
+           }
+
          ObscureCursor ();
 
          if (keycode == 0x33)  /* delete key (charCode translated to 0x8) */