From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2126) id 45FF7385840F; Mon, 18 Jul 2022 14:56:19 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 45FF7385840F Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable From: Tom Tromey To: gdb-cvs@sourceware.org Subject: [binutils-gdb] Replace input_interactive_p with a method X-Act-Checkin: binutils-gdb X-Git-Author: Tom Tromey X-Git-Refname: refs/heads/master X-Git-Oldrev: 8f7f9b3a9142eeea50054b83e9bce12056bae6c9 X-Git-Newrev: efd3baf0dcb38d7ecc2c8b4d1553254d3c022b7a Message-Id: <20220718145619.45FF7385840F@sourceware.org> Date: Mon, 18 Jul 2022 14:56:19 +0000 (GMT) X-BeenThere: gdb-cvs@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 18 Jul 2022 14:56:19 -0000 https://sourceware.org/git/gitweb.cgi?p=3Dbinutils-gdb.git;h=3Defd3baf0dcb3= 8d7ecc2c8b4d1553254d3c022b7a commit efd3baf0dcb38d7ecc2c8b4d1553254d3c022b7a Author: Tom Tromey Date: Thu Jun 23 11:09:28 2022 -0600 Replace input_interactive_p with a method =20 This replaces the global input_interactive_p function with a new method ui::input_interactive_p. Diff: --- gdb/cli/cli-script.c | 4 ++-- gdb/defs.h | 2 -- gdb/event-top.c | 4 ++-- gdb/top.c | 18 +++++++++--------- gdb/top.h | 5 ++++- 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 aa73d5307b3..5f81db418bc 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_comman= ds, gdb::function_view 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); } =20 - 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 19f379d6588..99a03fb0704 100644 --- a/gdb/defs.h +++ b/gdb/defs.h @@ -322,8 +322,6 @@ extern void print_prompt (void); =20 struct ui; =20 -extern int input_interactive_p (struct ui *); - extern bool info_verbose; =20 /* From printcmd.c */ diff --git a/gdb/event-top.c b/gdb/event-top.c index 2863a8aff69..02b3786320f 100644 --- a/gdb/event-top.c +++ b/gdb/event-top.c @@ -687,7 +687,7 @@ handle_line_of_input (struct buffer *cmd_line_buffer, } =20 /* 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 !=3D '\0' && from_tty && input_interactive_p (current_ui)) + if (*cmd !=3D '\0' && from_tty && current_ui->input_interactive_p ()) gdb_add_history (cmd); =20 /* Save into global buffer if appropriate. */ diff --git a/gdb/top.c b/gdb/top.c index 86c9971fa6d..60835acd5e5 100644 --- a/gdb/top.c +++ b/gdb/top.c @@ -308,7 +308,7 @@ ui::ui (FILE *instream_, FILE *outstream_, FILE *errstr= eam_) 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 c= har *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 =3D 1; break; @@ -1923,23 +1923,23 @@ show_interactive_mode (struct ui_file *file, int fr= om_tty, if (interactive_mode =3D=3D 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); } =20 /* Returns whether GDB is running on an interactive terminal. */ =20 -int -input_interactive_p (struct ui *ui) +bool +ui::input_interactive_p () const { if (batch_flag) - return 0; + return false; =20 if (interactive_mode !=3D AUTO_BOOLEAN_AUTO) return interactive_mode =3D=3D AUTO_BOOLEAN_TRUE; =20 - return ui->input_interactive_p; + return m_input_interactive_p; } =0C static void diff --git a/gdb/top.h b/gdb/top.h index 18c49cc5513..5c1db84b2ce 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; =20 /* See enum prompt_state's description. */ enum prompt_state prompt_state; @@ -154,6 +154,9 @@ struct ui =20 /* 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; }; =20 /* 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 5503acfd6bc..b0841e1fe5e 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 !=3D current_ui->stdin_stream - || !input_interactive_p (current_ui) + || !current_ui->input_interactive_p () /* Restrict queries to the main UI. */ || current_ui !=3D main_ui) {