From 9cc62187b4bcc5ddac456043f55542484f6fada3 Mon Sep 17 00:00:00 2001 From: Tom de Vries Date: Tue, 4 Feb 2025 10:21:28 +0100 Subject: [PATCH] [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 --- gdb/testsuite/gdb.tui/main.exp | 3 +++ gdb/tui/tui-source.h | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/gdb/testsuite/gdb.tui/main.exp b/gdb/testsuite/gdb.tui/main.exp index bc93ecfdb25..4213035fc46 100644 --- a/gdb/testsuite/gdb.tui/main.exp +++ b/gdb/testsuite/gdb.tui/main.exp @@ -50,3 +50,6 @@ Term::check_contents "show main after file" \ # 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 24c1009fc7c..9cad4ff91b4 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, -- 2.39.5