Donät give write_mask to select for W32.
process.c (wait_reading_process_output): Don't pass write_mask to select if SELECT_CANT_DO_WRITE_MASK is defined. (SELECT_CANT_DO_WRITE_MASK): Define if SELECT_CANT_DO_WRITE_MASK.
This commit is contained in:
parent
bf05eed640
commit
82d6e50bf5
2 changed files with 9 additions and 0 deletions
|
@ -2,6 +2,9 @@
|
|||
|
||||
* process.c (add_keyboard_wait_descriptor)
|
||||
(delete_keyboard_wait_descriptor): Reinstate ifdef subprocesses.
|
||||
(wait_reading_process_output): Don't pass write_mask to select
|
||||
if SELECT_CANT_DO_WRITE_MASK is defined.
|
||||
(SELECT_CANT_DO_WRITE_MASK): Define if SELECT_CANT_DO_WRITE_MASK.
|
||||
|
||||
* process.h (add_read_fd, delete_read_fd, add_write_fd)
|
||||
(delete_write_fd): Declare.
|
||||
|
|
|
@ -201,8 +201,10 @@ int update_tick;
|
|||
|
||||
/* Define NON_BLOCKING_CONNECT if we can support non-blocking connects. */
|
||||
|
||||
/* Only W32 has this, it really means that select can't take write mask. */
|
||||
#ifdef BROKEN_NON_BLOCKING_CONNECT
|
||||
#undef NON_BLOCKING_CONNECT
|
||||
#define SELECT_CANT_DO_WRITE_MASK
|
||||
#else
|
||||
#ifndef NON_BLOCKING_CONNECT
|
||||
#ifdef HAVE_SELECT
|
||||
|
@ -4726,7 +4728,11 @@ wait_reading_process_output (int time_limit, int microsecs, int read_kbd,
|
|||
else
|
||||
Available = input_wait_mask;
|
||||
Writeok = write_mask;
|
||||
#ifdef SELECT_CANT_DO_WRITE_MASK
|
||||
check_write = 0;
|
||||
#else
|
||||
check_write = 1;
|
||||
#endif
|
||||
check_delay = wait_channel >= 0 ? 0 : process_output_delay_count;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue