* fhandler.h (fhandler_tty_master::fixup_after_fork): Remove declaration.

(fhandler_tty_master::fixup_after_exec): Ditto.
* fhandler_tty.cc (fhandler_tty_master::init): Fix so that children do not
inherit master tty handles.
(fhandler_tty_master::fixup_after_fork): Remove, since it was never used.
(fhandler_tty_master::fixup_after_exec): Ditto.
* pinfo.cc (_pinfo::set_ctty): Increment open_fhs when ctty is set.
* cygheap.cc (cygheap_init): Ditto.
* syscalls.cc (setsid): *Always* call close on opened ctty since the archetype
is associated with the ctty and it counts as an opened handle.
* tty.cc (tty::common_init): Don't protect input/output mutex since it confuses
subsequent fork/execs when CYGWIN=tty.
This commit is contained in:
Christopher Faylor
2003-12-27 01:59:29 +00:00
parent 56b5feb639
commit 1df3fbe2db
8 changed files with 34 additions and 23 deletions

View File

@@ -78,6 +78,7 @@ fhandler_tty_master::init ()
set_winsize (false);
inuse = get_ttyp ()->create_inuse (TTY_MASTER_ALIVE);
set_close_on_exec (true);
cygthread *h;
h = new cygthread (process_input, cygself, "ttyin");
@@ -1402,20 +1403,6 @@ fhandler_pty_master::set_close_on_exec (int val)
}
}
void
fhandler_tty_master::fixup_after_fork (HANDLE child)
{
fhandler_pty_master::fixup_after_fork (child);
console->fixup_after_fork (child);
}
void
fhandler_tty_master::fixup_after_exec (HANDLE)
{
console->close ();
init_console ();
}
int
fhandler_tty_master::init_console ()
{