Split non-target-dependent code out of target_attach routines.
* target.h: Comments on target_attach args and results. * infcmd.c (attach_command): Check for existing execution, call target_attach, set up terminal status and wait_for_inferior, wait for the attach status, and do normal_stop. * inftarg.c (child_attach): Remove target independent stuff. * remote-adapt.c (adapt_attach): Ditto. * remote-mm.c (mm_attach): Ditto. * remote-udi.c (udi_attach): Ditto. * remote-vx.c (vx_attach): Ditto. Cleanup. * remote-hms.c (hms_attach): Remove completely, it was useless. * remote-mm.c, remote-hms.c, remote-udi.c, remote-adapt.c: Remove commented-out start_remote calls. * remote-hms.c, remote-adapt.c, remote-mm.c, remote-udi.c: Remove DENTER and DEXIT macros and their calls. Use a real debugger -- like gdb -- to see what functions are being called when.
This commit is contained in:
parent
218ce93030
commit
836e343b01
8 changed files with 52 additions and 320 deletions
|
@ -94,8 +94,7 @@ child_wait (status)
|
|||
}
|
||||
|
||||
|
||||
/* Attach to process PID, then initialize for debugging it
|
||||
and wait for the trace-trap that results from attaching. */
|
||||
/* Attach to process PID, then initialize for debugging it. */
|
||||
|
||||
static void
|
||||
child_attach (args, from_tty)
|
||||
|
@ -105,8 +104,6 @@ child_attach (args, from_tty)
|
|||
char *exec_file;
|
||||
int pid;
|
||||
|
||||
dont_repeat();
|
||||
|
||||
if (!args)
|
||||
error_no_arg ("process-id to attach");
|
||||
|
||||
|
@ -118,14 +115,6 @@ child_attach (args, from_tty)
|
|||
if (pid == getpid()) /* Trying to masturbate? */
|
||||
error ("I refuse to debug myself!");
|
||||
|
||||
if (target_has_execution)
|
||||
{
|
||||
if (query ("A program is being debugged already. Kill it? "))
|
||||
target_kill ();
|
||||
else
|
||||
error ("Inferior not killed.");
|
||||
}
|
||||
|
||||
if (from_tty)
|
||||
{
|
||||
exec_file = (char *) get_exec_file (0);
|
||||
|
@ -141,18 +130,6 @@ child_attach (args, from_tty)
|
|||
attach (pid);
|
||||
inferior_pid = pid;
|
||||
push_target (&child_ops);
|
||||
|
||||
mark_breakpoints_out ();
|
||||
target_terminal_init ();
|
||||
clear_proceed_status ();
|
||||
stop_soon_quietly = 1;
|
||||
/*proceed (-1, 0, -2);*/
|
||||
target_terminal_inferior ();
|
||||
wait_for_inferior ();
|
||||
#ifdef SOLIB_ADD
|
||||
SOLIB_ADD ((char *)0, from_tty, (struct target_ops *)0);
|
||||
#endif
|
||||
normal_stop ();
|
||||
#endif /* ATTACH_DETACH */
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue