aboutsummaryrefslogtreecommitdiff
path: root/gdb/python
diff options
context:
space:
mode:
authorTom Tromey <tromey@adacore.com>2023-05-09 14:20:31 -0600
committerTom Tromey <tromey@adacore.com>2023-06-12 12:09:18 -0600
commitd01f36bdfabaae60fa90134b70e2945bb530fa05 (patch)
tree55846bd17d42b9573a60cc4aef13768fe7c45cb6 /gdb/python
parent69ed07d5465e447c461bdc6b1f36b7b2575d7fe1 (diff)
downloadgdb-d01f36bdfabaae60fa90134b70e2945bb530fa05.zip
gdb-d01f36bdfabaae60fa90134b70e2945bb530fa05.tar.gz
gdb-d01f36bdfabaae60fa90134b70e2945bb530fa05.tar.bz2
Implement DAP attach request
This implements the DAP "attach" request. Note that the copyright dates on the new test source file are not incorrect -- this was copied verbatim from another directory. Reviewed-By: Eli Zaretskii <eliz@gnu.org>
Diffstat (limited to 'gdb/python')
-rw-r--r--gdb/python/lib/gdb/dap/launch.py13
1 files changed, 12 insertions, 1 deletions
diff --git a/gdb/python/lib/gdb/dap/launch.py b/gdb/python/lib/gdb/dap/launch.py
index 21499a3..a46be1d 100644
--- a/gdb/python/lib/gdb/dap/launch.py
+++ b/gdb/python/lib/gdb/dap/launch.py
@@ -16,7 +16,7 @@
import gdb
from .events import ExecutionInvoker
from .server import request, capability
-from .startup import send_gdb, in_gdb_thread
+from .startup import send_gdb, send_gdb_with_response, in_gdb_thread
_program = None
@@ -45,6 +45,17 @@ def launch(*, program=None, args=[], env=None, **extra):
send_gdb(lambda: _set_args_env(args, env))
+@request("attach")
+def attach(*, pid, **args):
+ # Ensure configurationDone does not try to run.
+ global _program
+ _program = None
+ # Use send_gdb_with_response to ensure we get an error if the
+ # attach fails.
+ send_gdb_with_response("attach " + str(pid))
+ return None
+
+
@capability("supportsConfigurationDoneRequest")
@request("configurationDone")
def config_done(**args):