Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[cdt-dev] [DSF--GDB] The "Terminate" button in debug view not sending a "kill"

In my remote process launch using CDI, the "Terminate" button in the
debug view invokes the Eclipse debug core
"org.eclipse.debug.internal.core.commands.TerminateCommand". The
"TerminateCommand" class invokes the CDI debug target "terminate()"
method and eventually invokes the
"org.eclipse.cdt.debug.mi.core.MIInferior.terminate()" method which
sends a GDB "kill" CLI command to the inferior to kill it before
proceeding to stop the debug session.

In DSF/GDB, the "Terminate" button does not go through the debug core
"TerminateCommand" and DSF does not send a "kill" to inferior. The
result is when the session is stopped, GDB detaches from the inferior
thus the process continues to run. This is not the intended behavior of
the "Terminiate" button.

I understand in DSF/GDB remote launch using GDBServer extend-remote
mode, GDBServer will kill the inferior because GDBServer starts it. But
in our environment we don't use GDBServer. The inferior is started by a
target agent which does not get involved after the debug session is
established. Without the "kill" command the interior will just run to
finish.

Does DSF/GDB override the "Terminate" button action and not using the
debug core "TerminateCommand" anymore? If yes, where can I insert a
"kill" CLI command e.g. instantiate a CLIExecAbort command?

Thanks,
Andy


Back to the top