From 2d3ff0f750c12b0ca2f9e572d3a22e63200ba913 Mon Sep 17 00:00:00 2001 From: Markus Metzger Date: Wed, 22 Jul 2026 07:39:24 +0000 Subject: [PATCH] gdb: fix maint info btrace The 'maint info btrace' command forgets to check whether the trace has already been decoded and keeps appending the same trace to the packet history at every command. Fix that. Reviewed-by: Tom Tromey --- gdb/btrace.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/gdb/btrace.c b/gdb/btrace.c index 5349a89001a..f5f2d6da972 100644 --- a/gdb/btrace.c +++ b/gdb/btrace.c @@ -3546,10 +3546,14 @@ maint_info_btrace_cmd (const char *args, int from_tty) version.minor, version.build, version.ext != NULL ? version.ext : ""); - btrace_maint_update_pt_packets (btinfo); + if (btinfo->maint.variant.pt.packets == nullptr) + btinfo->maint.variant.pt.packets = new std::vector; + + if (btinfo->maint.variant.pt.packets->empty ()) + btrace_maint_update_pt_packets (btinfo); + gdb_printf (_("Number of packets: %zu.\n"), - ((btinfo->maint.variant.pt.packets == nullptr) - ? 0 : btinfo->maint.variant.pt.packets->size ())); + btinfo->maint.variant.pt.packets->size ()); } break; #endif /* defined (HAVE_LIBIPT) */ -- 2.47.3