changeset 101740:90b1877630e7

* nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30 XT,w32read_socket changes to ns_read_socket. * keyboard.c (handle_interrupt): Don't call quit_throw_to_read_char() under NS. * blockinput.h: Remove NS-specific code.
author Adrian Robert <Adrian.B.Robert@gmail.com>
date Sun, 01 Feb 2009 16:32:26 +0000
parents 6e5d03f673c7
children 57277ecc1e6e
files src/keyboard.c
diffstat 1 files changed, 10 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/keyboard.c	Sun Feb 01 16:32:00 2009 +0000
+++ b/src/keyboard.c	Sun Feb 01 16:32:26 2009 +0000
@@ -11125,8 +11125,17 @@
 	Vquit_flag = Qt;
     }
 
+/* TODO: The longjmp in this call throws the NS event loop integration off,
+         and it seems to do fine without this.  Probably some attention
+	 needs to be paid to the setting of waiting_for_input in
+         wait_reading_process_output() under HAVE_NS because of the call
+         to ns_select there (needed because otherwise events aren't picked up
+         outside of polling since we don't get SIGIO like X and we don't have a
+         separate event loop thread like W32. */
+#ifndef HAVE_NS
   if (waiting_for_input && !echoing)
       quit_throw_to_read_char ();
+#endif
 }
 
 /* Handle a C-g by making read_char return C-g.  */
@@ -11183,7 +11192,7 @@
 #endif /* NO_SOCK_SIGIO */
     }
   else
-#endif
+#endif /* HAVE_X_WINDOWS */
     new_interrupt_input = !NILP (interrupt);
 #else /* not SIGIO */
   new_interrupt_input = 0;