diff options
author | Tom Tromey <tromey@adacore.com> | 2022-06-23 11:09:28 -0600 |
---|---|---|
committer | Tom Tromey <tromey@adacore.com> | 2022-07-18 08:49:55 -0600 |
commit | efd3baf0dcb38d7ecc2c8b4d1553254d3c022b7a (patch) | |
tree | 32c375e1e893117e20299cee54d30c1cb91e7679 | |
parent | 8f7f9b3a9142eeea50054b83e9bce12056bae6c9 (diff) | |
download | gdb-efd3baf0dcb38d7ecc2c8b4d1553254d3c022b7a.zip gdb-efd3baf0dcb38d7ecc2c8b4d1553254d3c022b7a.tar.gz gdb-efd3baf0dcb38d7ecc2c8b4d1553254d3c022b7a.tar.bz2 |
Replace input_interactive_p with a method
This replaces the global input_interactive_p function with a new
method ui::input_interactive_p.
-rw-r--r-- | gdb/cli/cli-script.c | 4 | ||||
-rw-r--r-- | gdb/defs.h | 2 | ||||
-rw-r--r-- | gdb/event-top.c | 4 | ||||
-rw-r--r-- | gdb/top.c | 18 | ||||
-rw-r--r-- | gdb/top.h | 5 | ||||
-rw-r--r-- | gdb/utils.c | 2 |
6 files changed, 18 insertions, 17 deletions
diff --git a/gdb/cli/cli-script.c b/gdb/cli/cli-script.c index aa73d53..5f81db4 100644 --- a/gdb/cli/cli-script.c +++ b/gdb/cli/cli-script.c @@ -1176,7 +1176,7 @@ counted_command_line read_command_lines (const char *prompt_arg, int from_tty, int parse_commands, gdb::function_view<void (const char *)> validator) { - if (from_tty && input_interactive_p (current_ui)) + if (from_tty && current_ui->input_interactive_p ()) { if (deprecated_readline_begin_hook) { @@ -1203,7 +1203,7 @@ read_command_lines (const char *prompt_arg, int from_tty, int parse_commands, validator); } - if (from_tty && input_interactive_p (current_ui) + if (from_tty && current_ui->input_interactive_p () && deprecated_readline_end_hook) { (*deprecated_readline_end_hook) (); @@ -322,8 +322,6 @@ extern void print_prompt (void); struct ui; -extern int input_interactive_p (struct ui *); - extern bool info_verbose; /* From printcmd.c */ diff --git a/gdb/event-top.c b/gdb/event-top.c index 2863a8a..02b3786 100644 --- a/gdb/event-top.c +++ b/gdb/event-top.c @@ -687,7 +687,7 @@ handle_line_of_input (struct buffer *cmd_line_buffer, } /* Do history expansion if that is wished. */ - if (history_expansion_p && from_tty && input_interactive_p (current_ui)) + if (history_expansion_p && from_tty && current_ui->input_interactive_p ()) { char *cmd_expansion; int expanded; @@ -729,7 +729,7 @@ handle_line_of_input (struct buffer *cmd_line_buffer, and then later fetch it from the value history and remove the '#'. The kill ring is probably better, but some people are in the habit of commenting things out. */ - if (*cmd != '\0' && from_tty && input_interactive_p (current_ui)) + if (*cmd != '\0' && from_tty && current_ui->input_interactive_p ()) gdb_add_history (cmd); /* Save into global buffer if appropriate. */ @@ -308,7 +308,7 @@ ui::ui (FILE *instream_, FILE *outstream_, FILE *errstream_) outstream (outstream_), errstream (errstream_), input_fd (fileno (instream)), - input_interactive_p (ISATTY (instream)), + m_input_interactive_p (ISATTY (instream)), prompt_state (PROMPT_NEEDED), m_gdb_stdout (new pager_file (new stdio_file (outstream))), m_gdb_stdin (new stdio_file (instream)), @@ -1405,13 +1405,13 @@ command_line_input (const char *prompt_arg, const char *annotation_suffix) /* Don't use fancy stuff if not talking to stdin. */ if (deprecated_readline_hook && from_tty - && input_interactive_p (current_ui)) + && current_ui->input_interactive_p ()) { rl.reset ((*deprecated_readline_hook) (prompt)); } else if (command_editing_p && from_tty - && input_interactive_p (current_ui)) + && current_ui->input_interactive_p ()) { rl.reset (gdb_readline_wrapper (prompt)); } @@ -1875,7 +1875,7 @@ quit_force (int *exit_arg, int from_tty) any UI with a terminal, save history. */ for (ui *ui : all_uis ()) { - if (input_interactive_p (ui)) + if (ui->input_interactive_p ()) { save = 1; break; @@ -1923,23 +1923,23 @@ show_interactive_mode (struct ui_file *file, int from_tty, if (interactive_mode == AUTO_BOOLEAN_AUTO) gdb_printf (file, "Debugger's interactive mode " "is %s (currently %s).\n", - value, input_interactive_p (current_ui) ? "on" : "off"); + value, current_ui->input_interactive_p () ? "on" : "off"); else gdb_printf (file, "Debugger's interactive mode is %s.\n", value); } /* Returns whether GDB is running on an interactive terminal. */ -int -input_interactive_p (struct ui *ui) +bool +ui::input_interactive_p () const { if (batch_flag) - return 0; + return false; if (interactive_mode != AUTO_BOOLEAN_AUTO) return interactive_mode == AUTO_BOOLEAN_TRUE; - return ui->input_interactive_p; + return m_input_interactive_p; } static void @@ -124,7 +124,7 @@ struct ui /* Whether ISATTY returns true on input_fd. Cached here because quit_force needs to know this _after_ input_fd might be closed. */ - int input_interactive_p; + bool m_input_interactive_p; /* See enum prompt_state's description. */ enum prompt_state prompt_state; @@ -154,6 +154,9 @@ struct ui /* Unregister the UI's input file descriptor from the event loop. */ void unregister_file_handler (); + + /* Return true if this UI's input fd is a tty. */ + bool input_interactive_p () const; }; /* The main UI. This is the UI that is bound to stdin/stdout/stderr. diff --git a/gdb/utils.c b/gdb/utils.c index 5503acf..b0841e1 100644 --- a/gdb/utils.c +++ b/gdb/utils.c @@ -880,7 +880,7 @@ defaulted_query (const char *ctlstr, const char defchar, va_list args) way, important error messages don't get lost when talking to GDB over a pipe. */ if (current_ui->instream != current_ui->stdin_stream - || !input_interactive_p (current_ui) + || !current_ui->input_interactive_p () /* Restrict queries to the main UI. */ || current_ui != main_ui) { |