aboutsummaryrefslogtreecommitdiff
path: root/gdb/cli
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/cli')
-rw-r--r--gdb/cli/cli-interp.c17
-rw-r--r--gdb/cli/cli-interp.h2
2 files changed, 5 insertions, 14 deletions
diff --git a/gdb/cli/cli-interp.c b/gdb/cli/cli-interp.c
index 84fe34a..51c78d9 100644
--- a/gdb/cli/cli-interp.c
+++ b/gdb/cli/cli-interp.c
@@ -137,19 +137,10 @@ cli_base_on_normal_stop (struct bpstat *bs, int print_frame)
}
}
-/* Observer for the signal_received notification. */
-
-static void
-cli_base_on_signal_received (enum gdb_signal siggnal)
+void
+cli_interp_base::on_signal_received (enum gdb_signal siggnal)
{
- SWITCH_THRU_ALL_UIS ()
- {
- cli_interp_base *cli = as_cli_interp_base (top_level_interpreter ());
- if (cli == nullptr)
- continue;
-
- print_signal_received_reason (cli->interp_ui_out (), siggnal);
- }
+ print_signal_received_reason (this->interp_ui_out (), siggnal);
}
/* Observer for the signalled notification. */
@@ -408,8 +399,6 @@ _initialize_cli_interp ()
/* Note these all work for both the CLI and TUI interpreters. */
gdb::observers::normal_stop.attach (cli_base_on_normal_stop,
"cli-interp-base");
- gdb::observers::signal_received.attach (cli_base_on_signal_received,
- "cli-interp-base");
gdb::observers::signal_exited.attach (cli_base_on_signal_exited,
"cli-interp-base");
gdb::observers::exited.attach (cli_base_on_exited, "cli-interp-base");
diff --git a/gdb/cli/cli-interp.h b/gdb/cli/cli-interp.h
index 5ed998f..f7bee45 100644
--- a/gdb/cli/cli-interp.h
+++ b/gdb/cli/cli-interp.h
@@ -33,6 +33,8 @@ public:
void pre_command_loop () override;
bool supports_command_editing () override;
+ void on_signal_received (gdb_signal sig) override;
+
private:
struct saved_output_files
{