diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 5d7d86dd9..fb9fb11c6 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,8 @@ +2006-06-12 Christopher Faylor + + * fhandler_tty.cc (fhandler_pty_master::close): Always close + from_master/to_master since we always have copies of these handles. + 2006-06-12 Corinna Vinschen * include/sys/wait.h: Move definition of wait constants from here... diff --git a/winsup/cygwin/fhandler_tty.cc b/winsup/cygwin/fhandler_tty.cc index 86d5d88b5..c623c872a 100644 --- a/winsup/cygwin/fhandler_tty.cc +++ b/winsup/cygwin/fhandler_tty.cc @@ -1166,18 +1166,12 @@ fhandler_pty_master::close () } fhandler_tty_master *arch = (fhandler_tty_master *) archetype; - if (arch->dwProcessId != GetCurrentProcessId ()) - termios_printf ("not closing from_master(%p)/to_master(%p) since we don't own them(%d)", - arch->from_master, arch->to_master, arch->dwProcessId); - else - { - termios_printf ("closing from_master(%p)/to_master(%p) since we own them(%d)", - arch->from_master, arch->to_master, arch->dwProcessId); - if (!ForceCloseHandle (arch->from_master)) - termios_printf ("error closing from_master %p, %E", arch->from_master); - if (!ForceCloseHandle (arch->to_master)) - termios_printf ("error closing from_master %p, %E", arch->to_master); - } + termios_printf ("closing from_master(%p)/to_master(%p) since we own them(%d)", + arch->from_master, arch->to_master, arch->dwProcessId); + if (!ForceCloseHandle (arch->from_master)) + termios_printf ("error closing from_master %p, %E", arch->from_master); + if (!ForceCloseHandle (arch->to_master)) + termios_printf ("error closing from_master %p, %E", arch->to_master); fhandler_tty_common::close (); if (hExeced || get_ttyp ()->master_pid != myself->pid)