comparison src/callproc.c @ 109949:5f187a091415

Simplify termio code. All non-MSDOS non-WINDOWSNT platforms define HAVE_TERMIOS, so HAVE_TERMIO code is obsolete. Replace HAVE_TERMIOS conditionals with !DOS_NT. * src/systty.h: Do not define HAVE_TCATTR. Remove HAVE_TERMIO, HAVE_LTCHARS and HAVE_TCHARS code. Do not define EMACS_HAVE_TTY_PGRP. Only define EMACS_GET_TTY_PGRP for !DOS_NT. * src/sysdep.c: Include sysselect.h unconditionally. Do not include sys/ioctl.h and termios.h, systty.h does it. Use HAVE_SYS_UTSNAME_H instead of USG as an include guard. (init_baud_rate): Remove HAVE_TERMIO code. (child_setup_tty): Remove HAVE_TERMIO code. (emacs_get_tty, emacs_set_tty): Remove HAVE_TERMIO, HAVE_TCHARS and HAVE_LTCHARS code. Use !DOS_NT instead of HAVE_TCATTR. (new_ltchars, new_tchars): Remove, unused. (init_sys_modes): Remove HAVE_TERMIO, HAVE_TCHARS and HAVE_LTCHARS code. Remove special casing for __mips__, it was a no-op. Remove HAVE_TCATTR conditional, it is implied by HAVE_TERMIOS. (init_sys_modes): Remove HPUX special case. * src/process.c: Include stdlib.h unconditionally. Do not include fcntl.h, systty.h does it. Remove conditional code for HAVE_SERIAL, it is always true. (process_send_signal): Remove HAVE_TERMIOS conditional, it's always true when SIGNALS_VIA_CHARACTERS is true. (Fcontinue_process, Fprocess_send_eof): Simplify conditionals: !WINDOWSNT means HAVE_TERMIOS. (create_process): Remove HAVE_TERMIOS, it's inside a HAVE_PTYS conditional, which is true for all HAVE_TERMIOS systems. * src/keyboard.c (init_keyboard): Do not use HAVE_TERMIO, use !DOS_NT instead of HAVE_TERMIOS. * src/emacs.c (shut_down_emacs): Use !defined DOS_NT instead of EMACS_HAVE_TTY_PGRP. * src/callproc.c (child_setup): Move EMACS_SET_TTY_PGRP use to the non-MSDOS, non-WINDOWSNT code, it's only defined for such systems anyway.
author Dan Nicolaescu <dann@ics.uci.edu>
date Sun, 22 Aug 2010 08:14:37 -0700
parents e2f8226efb99
children a6fc92a6d443
comparison
equal deleted inserted replaced
109909:a1846ab0dc91 109949:5f187a091415
1229 setpgrp (); /* No arguments but equivalent in this case */ 1229 setpgrp (); /* No arguments but equivalent in this case */
1230 #endif 1230 #endif
1231 #else 1231 #else
1232 setpgrp (pid, pid); 1232 setpgrp (pid, pid);
1233 #endif /* USG */ 1233 #endif /* USG */
1234 /* setpgrp_of_tty is incorrect here; it uses input_fd. */
1235 EMACS_SET_TTY_PGRP (0, &pid);
1236 1234
1237 #ifdef MSDOS 1235 #ifdef MSDOS
1238 pid = run_msdos_command (new_argv, pwd_var + 4, in, out, err, env); 1236 pid = run_msdos_command (new_argv, pwd_var + 4, in, out, err, env);
1239 xfree (pwd_var); 1237 xfree (pwd_var);
1240 if (pid == -1) 1238 if (pid == -1)
1249 if (cpid == -1) 1247 if (cpid == -1)
1250 /* An error occurred while trying to spawn the process. */ 1248 /* An error occurred while trying to spawn the process. */
1251 report_file_error ("Spawning child process", Qnil); 1249 report_file_error ("Spawning child process", Qnil);
1252 return cpid; 1250 return cpid;
1253 #else /* not WINDOWSNT */ 1251 #else /* not WINDOWSNT */
1252 /* setpgrp_of_tty is incorrect here; it uses input_fd. */
1253 EMACS_SET_TTY_PGRP (0, &pid);
1254
1254 /* execvp does not accept an environment arg so the only way 1255 /* execvp does not accept an environment arg so the only way
1255 to pass this environment is to set environ. Our caller 1256 to pass this environment is to set environ. Our caller
1256 is responsible for restoring the ambient value of environ. */ 1257 is responsible for restoring the ambient value of environ. */
1257 environ = env; 1258 environ = env;
1258 execvp (new_argv[0], new_argv); 1259 execvp (new_argv[0], new_argv);