Select frame when fetching a frame variable in DAP
authorTom Tromey <tromey@adacore.com>
Mon, 21 Aug 2023 19:51:59 +0000 (13:51 -0600)
committerTom Tromey <tromey@adacore.com>
Tue, 5 Sep 2023 17:03:02 +0000 (11:03 -0600)
commit91c7233d2da89a6bd4e784031af08c61cb1a5cff
tree3023e3ddf6f176254c9aa1f23627becff3166ea0
parent84914f598e5d48b78243b7e523804a28a4baf1eb
Select frame when fetching a frame variable in DAP

Right now, if a program uses multiple languages, DAP value formatting
will always use the language of the innermost frame.  However, it is
better to use the variable's defining frame instead.  This patch does
this by selecting the frame first.

This also fixes a possibly latent bug in the "stepOut" command --
"finish" is sensitive to the selected frame, but the DAP code may
already select other frames when convenient.  The DAP stepOut request
only works on the newest frame, so be sure to select it before
invoking "finish".
gdb/python/lib/gdb/dap/next.py
gdb/python/lib/gdb/dap/scopes.py