diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 8fd8ea825e..cdaf648949 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 a71c6ad722..c7f507435f 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,