IS_DEVICE_SEP, DIRECTORY_SEP, and DEVICE_SEP.
[WINDOWSNT]: Add includes. Don't define sys_siglist.
(sigchld_handler): Work around bug in MS C compiler.
(sigchld_handler) [WINDOWSNT]: Do not call signal.
(signal_process) [WINDOWSNT]: Use win32_kill_process instead of kill.
(read_process_output) [WINDOWSNT]: Use read_child_output instead of
read.
(create_process) [WINDOWSNT]: Use
pipe_with_inherited_out and pipe_with_inherited_in.
Use the pid returned by child_setup. Deal with not having vfork,
Call register_child.
(close_process_descs): Do nothing if WINDOWSNT.
(proc_buffer_char): No longer static.
(non_keyboard_wait_mask): New variable.
(Fset_process_filter): Update non_keyboard_wait_mask
(create_process, Fopen_network_stream, deactivate_process):
(init_process, sigchld_handler): Likewise.
(wait_reading_process_input): Maybe use non_keyboard_wait_mask.
(add_keyboard_wait_descriptor):
Renamed from change_keyboard_wait_descriptor.
Clear the old descriptor's bit only the first call.
(delete_keyboard_wait_descriptor): New function.
(keyboard_bit_set): New function.
(wait_reading_process_input): Use keyboard_bit_set.
Start the loop over process descs from 0, and explicitly
ignore non-process input descs.
(init_process): Don't init keyboard_descriptor.
(keyboard_descriptor): Variable deleted.
(add_keyboard_wait_descriptor): Don't set keyboard_descriptor.
(delete_keyboard_wait_descriptor): New function.
Fprocess_exit_status, list_processes_1, Fstart_process, Fopen_network_stream,
Faccept_process_output, wait_reading_process_input, sigchld_handler,
status_notify): Use type test macros.
(exec_sentinel): Catch all errors in the sentinel.
(read_process_output_error_handler): New function.
(read_process_output_call): New function.
(read_process_output): Catch and report errors in filters.
(pty_name): Move it up; make it static.
(create_process): Set the tty_name field.
(Fprocess_tty_name): New function.
(syms_of_process): defsubr it.
Don't put in a C-d unless a single line is too long.
Read process input whenever output gets stuck.
Relocate BUF if we read input. New arg OBJECT.
Fprocess_send_region, Fprocess_send_string, process_send_signal)
(Fprocess_send_eof): Pass new arg OBJECT.
unless we are going to redisplay for a garbaged frame.
(read_process_output): Call prepare_menu_bars if waiting for input.
(exec_sentinel): Call prepare_menu_bars if waiting for input.