Subject: bug#29020: [PATCH] gdb-mi doesn't display prompt when attaching

From: Mike Gulick <[email-masked]>
Date: Fri, 27 Oct 2017 11:28:00 -0400

This patch is pretty straightforward.  When we write a console message
to the GUD buffer, we now reset a variable that is used to determine
whether to print the gdb prompt on the next '^done' or '*stopped'
message.

diff --git a/lisp/progmodes/gdb-mi.el b/lisp/progmodes/gdb-mi.el
index 7723f70..fb6e1a5 100644
--- a/lisp/progmodes/gdb-mi.el
+++ b/lisp/progmodes/gdb-mi.el
@@ -2188,7 +2188,10 @@ a GDB/MI reply message."
 
 (defun gdbmi-bnf-console-stream-output (c-string)
   "Handler for the console-stream-output GDB/MI output grammar rule."
-  (gdb-console c-string))
+  (gdb-console c-string)
+  ;; We've written to the GUD console, so we should print the prompt after the
+  ;; next result-class or async-class.
+  (setq gdb-first-done-or-error t))
 
 (defun gdbmi-bnf-target-stream-output (_c-string)
   "Handler for the target-stream-output GDB/MI output grammar rule."