Subject: bug#39408: Breakpoints don't work with M-x gdb under TRAMP

From: Jim Porter <[email-masked]>
Date: Thu, 15 Apr 2021 22:02:01 -0700

This is already fixed in Emacs 28 thanks to bug#44173 (a78c614), which
replaces the old GDB/MI parser (that converted the data to JSON first)
with a more-robust parser. Attached is a patch to fix this under Emacs
27.

The problem is that in `gdb-jsonify-buffer', when replacing the
"fullname" with a Tramp path, the wildcard was greedy, resulting in
only one "fullname" being replaced in the buffer. This had the effect
of rendering it impossible to have more than one breakpoint, as all
but the first breakpoint would have unmodified "fullname"s.

(Note: I have a couple of patches in Tramp already that put me at the
limit for patches without copyright assignment paperwork. However,
I've already requested the form.)