unimportant. */
static struct terminal_info our_terminal_info;
+/* The initial tty state given to each new inferior. It is a snapshot of our
+ own tty state taken during initialization of GDB. */
+static serial_ttystate initial_gdb_ttystate;
+
static struct terminal_info *get_inflow_inferior_data (struct inferior *);
#ifdef PROCESS_GROUP_TYPE
fprintf_filtered (file, "Debugger's interactive mode is %s.\n", value);
}
+/* Set the initial tty state that is to be inherited by new inferiors. */
+void
+set_initial_gdb_ttystate (void)
+{
+ initial_gdb_ttystate = serial_get_tty_state (stdin_serial);
+}
+
/* Does GDB have a terminal (on stdin)? */
int
gdb_has_a_terminal (void)
{
xfree (tinfo->ttystate);
tinfo->ttystate = serial_copy_tty_state (stdin_serial,
- our_terminal_info.ttystate);
+ initial_gdb_ttystate);
/* Make sure that next time we call terminal_inferior (which will be
before the program runs, as it needs to be), we install the new