* fhandler.h (fhandler_base::status): Declare private.
(fhandler_base::open_status): Ditto. (class fhandler_socket): Move status bits into private bitfield struct type status_flags. Change accessor methods appropriately. * fhandler_socket.cc (fhandler_socket::fhandler_socket): Accomodate above status bit changes. * tty.h: Remove status bit enumerator. (TTYISSETF): Remove. (TTYSETF): Remove. (TTYCLEARF): Remove. (TTYCONDSETF): Remove. (tty_min::status): Define as private bitfield struct type status_flags. Add appropriate accessor methods. * fhandler_console.cc: Use tty_min::status accessor methods throughout. * fhandler_termios.cc: Ditto. * winsup.h (__ISSETF): Remove. (__SETF): Remove. (__CLEARF): Remove. (__CONDSETF): Remove.
This commit is contained in:
@ -154,10 +154,8 @@ set_console_state_for_spawn ()
|
||||
if (shared_console_info != NULL)
|
||||
{
|
||||
/* ACK. Temporarily define for use in TTYSETF macro */
|
||||
# define tc &shared_console_info->tty_min_state
|
||||
SetConsoleMode (h, ENABLE_LINE_INPUT | ENABLE_ECHO_INPUT | ENABLE_PROCESSED_INPUT);
|
||||
TTYSETF (RSTCONS);
|
||||
# undef tc
|
||||
shared_console_info->tty_min_state.set_rstcons ();
|
||||
}
|
||||
|
||||
CloseHandle (h);
|
||||
@ -538,7 +536,7 @@ sig_exit:
|
||||
void
|
||||
fhandler_console::set_input_state ()
|
||||
{
|
||||
if (TTYISSETF (RSTCONS))
|
||||
if (tc->needs_rstcons ())
|
||||
input_tcsetattr (0, &tc->ti);
|
||||
}
|
||||
|
||||
@ -660,7 +658,7 @@ fhandler_console::open (int flags, mode_t)
|
||||
SetConsoleMode (get_io_handle (), ENABLE_WINDOW_INPUT | ENABLE_MOUSE_INPUT | cflags);
|
||||
}
|
||||
|
||||
TTYCLEARF (RSTCONS);
|
||||
tc->clear_rstcons ();
|
||||
set_open_status ();
|
||||
cygheap->open_fhs++;
|
||||
debug_printf ("incremented open_fhs, now %d", cygheap->open_fhs);
|
||||
@ -844,7 +842,7 @@ fhandler_console::input_tcsetattr (int, struct termios const *t)
|
||||
res, t, flags, t->c_lflag, t->c_iflag);
|
||||
}
|
||||
|
||||
TTYCLEARF (RSTCONS);
|
||||
tc->clear_rstcons ();
|
||||
return res;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user