aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tromey@adacore.com>2022-06-23 11:09:28 -0600
committerTom Tromey <tromey@adacore.com>2022-07-18 08:49:55 -0600
commitefd3baf0dcb38d7ecc2c8b4d1553254d3c022b7a (patch)
tree32c375e1e893117e20299cee54d30c1cb91e7679
parent8f7f9b3a9142eeea50054b83e9bce12056bae6c9 (diff)
downloadfsf-binutils-gdb-efd3baf0dcb38d7ecc2c8b4d1553254d3c022b7a.zip
fsf-binutils-gdb-efd3baf0dcb38d7ecc2c8b4d1553254d3c022b7a.tar.gz
fsf-binutils-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.c4
-rw-r--r--gdb/defs.h2
-rw-r--r--gdb/event-top.c4
-rw-r--r--gdb/top.c18
-rw-r--r--gdb/top.h5
-rw-r--r--gdb/utils.c2
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) ();
diff --git a/gdb/defs.h b/gdb/defs.h
index 19f379d..99a03fb 100644
--- a/gdb/defs.h
+++ b/gdb/defs.h
@@ -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. */
diff --git a/gdb/top.c b/gdb/top.c
index 86c9971..60835ac 100644
--- a/gdb/top.c
+++ b/gdb/top.c
@@ -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
diff --git a/gdb/top.h b/gdb/top.h
index 18c49cc..5c1db84 100644
--- a/gdb/top.h
+++ b/gdb/top.h
@@ -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)
{