Mercurial > emacs
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); |