From c509f1e1e8187e0abd2321aadc37878402c87332 Mon Sep 17 00:00:00 2001 From: Pedro Alves Date: Tue, 12 Apr 2016 16:49:31 +0100 Subject: [PATCH] Use target_terminal_ours_for_output in cp-support.c We're only doing output here, so leave raw/cooked mode alone, as well as the SIGINT handler. Restore terminal settings after output, while at it. gdb/ChangeLog: 2016-04-12 Pedro Alves * cp-support.c (gdb_demangle): Use target_terminal_ours_for_output instead of target_terminal_ours, and restore target terminal with a cleanup. --- gdb/ChangeLog | 6 ++++++ gdb/cp-support.c | 4 +++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 8fd8ea825e0..cdaf6489494 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +2016-04-12 Pedro Alves + + * cp-support.c (gdb_demangle): Use target_terminal_ours_for_output + instead of target_terminal_ours, and restore target terminal with + a cleanup. + 2016-04-12 Pedro Alves * ada-lang.c (type_as_string, type_as_string_and_cleanup): New diff --git a/gdb/cp-support.c b/gdb/cp-support.c index a71c6ad7227..c7f507435f7 100644 --- a/gdb/cp-support.c +++ b/gdb/cp-support.c @@ -1601,7 +1601,9 @@ gdb_demangle (const char *name, int options) "demangler-warning", short_msg); make_cleanup (xfree, long_msg); - target_terminal_ours (); + make_cleanup_restore_target_terminal (); + target_terminal_ours_for_output (); + begin_line (); if (core_dump_allowed) fprintf_unfiltered (gdb_stderr, -- 2.30.2