Throughout change TTY_* to PTY_*, tty_* to pty_*, and ttym_* to ptmx_*.

* devices.cc: Regenerate.
* dtable.cc: (fh_alloc): Preserve /dev/tty name when that's what we opened.
(build_fh_pc): Preserve any existing name.
* fhandler.cc (fhandler_base::open_with_arch): Ditto.
* fhandler_tty.cc (fhandler_pty_master::fhandler_pty_master): Force the name to
/dev/ptmx while preserving other pty master device information.
* path.h (cfree_maybe): New macro.
(path_conv::operator =): Free any allocated strings in target.
(path_conv::free_strings): Delete unused function.
* sigproc.cc (proc_terminate): Remove previous accommodation for execed
processes since it didn't have the desired effect.  Change comment to a FIXME.
* spawn.cc (chExeced): Mark NO_COPY.
(exe_suffixes): Ditto.
This commit is contained in:
Christopher Faylor
2011-10-20 14:02:54 +00:00
parent aa982024d1
commit 38d732a152
14 changed files with 211 additions and 171 deletions

View File

@ -469,8 +469,19 @@ fhandler_base::open_with_arch (int flags, mode_t mode)
}
else
{
char *name;
/* Preserve any name (like /dev/tty) derived from build_fh_pc. */
if (!get_name ())
name = NULL;
else
{
name = (char *) alloca (strlen (get_name ()) + 1);
strcpy (name, get_name ());
}
fhandler_base *arch = archetype;
archetype->copyto (this);
if (name)
set_name (name);
archetype = arch;
archetype_usecount (1);
usecount = 0;