[gdb/tui] Remove stale title when showing "No Source Available"
When running test-case gdb.tui/main.exp, the last command discards the
executable file and symbol table:
...
(gdb) file
No executable file now.
Discard symbol table from `main'? (y or n) [answered Y; input not from terminal]
No symbol file now.
(gdb)
...
and we end up with this source window:
...
+-tui-layout.c----------------------------------------------------------------+
| |
| |
| |
| |
| |
| |
| [ No Source Available ] |
| |
| |
| |
| |
| |
| |
+-----------------------------------------------------------------------------+
...
The source window title shouldn't be showing tui-layout.c. It's the source
file containing function main for the executable that was just discarded.
Fix this by clearing the title in tui_source_window::erase_source_content.
Tested on x86_64-linux.
Approved-By: Tom Tromey <tom@tromey.com>
diff --git a/gdb/testsuite/gdb.tui/main.exp b/gdb/testsuite/gdb.tui/main.exp
index bc93ecf..4213035 100644
--- a/gdb/testsuite/gdb.tui/main.exp
+++ b/gdb/testsuite/gdb.tui/main.exp
@@ -50,3 +50,6 @@
# Ensure that "file" clears the source window.
Term::command "file"
Term::check_contents "file clears window" "No Source Available"
+
+Term::check_region_contents "empty title" \
+ 0 0 80 1 {^\+-*\+$}
diff --git a/gdb/tui/tui-source.h b/gdb/tui/tui-source.h
index 24c1009..9cad4ff 100644
--- a/gdb/tui/tui-source.h
+++ b/gdb/tui/tui-source.h
@@ -51,6 +51,10 @@ struct tui_source_window : public tui_source_window_base
void erase_source_content () override
{
do_erase_source_content (_("[ No Source Available ]"));
+
+ /* The source window's title shows the filename, so no source available
+ means no title. */
+ set_title ("");
}
void display_start_addr (struct gdbarch **gdbarch_p,