diff options
Diffstat (limited to 'src/process.c')
-rw-r--r-- | src/process.c | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/src/process.c b/src/process.c index 45aeb3f6f35..dd892637726 100644 --- a/src/process.c +++ b/src/process.c @@ -127,11 +127,11 @@ Boston, MA 02110-1301, USA. */ #include "charset.h" #include "coding.h" #include "process.h" +#include "frame.h" #include "termhooks.h" #include "termopts.h" #include "commands.h" #include "keyboard.h" -#include "frame.h" #include "blockinput.h" #include "dispextern.h" #include "composite.h" @@ -308,11 +308,11 @@ static int read_process_output P_ ((Lisp_Object, int)); static SELECT_TYPE input_wait_mask; -/* Mask that excludes keyboard input descriptor (s). */ +/* Mask that excludes keyboard input descriptor(s). */ static SELECT_TYPE non_keyboard_wait_mask; -/* Mask that excludes process input descriptor (s). */ +/* Mask that excludes process input descriptor(s). */ static SELECT_TYPE non_process_wait_mask; @@ -6607,20 +6607,12 @@ DEFUN ("process-filter-multibyte-p", Fprocess_filter_multibyte_p, -/* The first time this is called, assume keyboard input comes from DESC - instead of from where we used to expect it. - Subsequent calls mean assume input keyboard can come from DESC - in addition to other places. */ - -static int add_keyboard_wait_descriptor_called_flag; +/* Add DESC to the set of keyboard input descriptors. */ void add_keyboard_wait_descriptor (desc) int desc; { - if (! add_keyboard_wait_descriptor_called_flag) - FD_CLR (0, &input_wait_mask); - add_keyboard_wait_descriptor_called_flag = 1; FD_SET (desc, &input_wait_mask); FD_SET (desc, &non_process_wait_mask); if (desc > max_keyboard_desc) @@ -6690,7 +6682,12 @@ init_process () process_output_skip = 0; #endif + /* Don't do this, it caused infinite select loops. The display + method should call add_keyboard_wait_descriptor on stdin if it + needs that. */ +#if 0 FD_SET (0, &input_wait_mask); +#endif Vprocess_alist = Qnil; for (i = 0; i < MAXDESC; i++) |