Use target_terminal_ours_for_output in cp-support.c
authorPedro Alves <palves@redhat.com>
Tue, 12 Apr 2016 15:49:31 +0000 (16:49 +0100)
committerPedro Alves <palves@redhat.com>
Tue, 12 Apr 2016 15:58:14 +0000 (16:58 +0100)
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  <palves@redhat.com>

* 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
gdb/cp-support.c

index 8fd8ea8..cdaf648 100644 (file)
@@ -1,5 +1,11 @@
 2016-04-12  Pedro Alves  <palves@redhat.com>
 
+       * 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  <palves@redhat.com>
+
        * ada-lang.c (type_as_string, type_as_string_and_cleanup): New
        functions.
        (ada_lookup_struct_elt_type): Use type_as_string_and_cleanup.
index a71c6ad..c7f5074 100644 (file)
@@ -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,