# HG changeset patch # User Adrian Robert # Date 1233505946 0 # Node ID 90b1877630e763ab0ddb88889ffa6c396ba8cbf2 # Parent 6e5d03f673c75aedf931b9132c66385ceffea993 * 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. diff -r 6e5d03f673c7 -r 90b1877630e7 src/keyboard.c --- 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;