aboutsummaryrefslogtreecommitdiff
path: root/gdb/inf-ptrace.c
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2008-09-22 15:21:30 +0000
committerPedro Alves <palves@redhat.com>2008-09-22 15:21:30 +0000
commit181e7f9393edb01de72d25e208a6ef4f069fb36f (patch)
tree1e6c460894d9f33dbfafd225515cabefc66f8523 /gdb/inf-ptrace.c
parentd6b48e9c8beee5d3ab78ac1979f6af0d6de9ae30 (diff)
downloadgdb-181e7f9393edb01de72d25e208a6ef4f069fb36f.zip
gdb-181e7f9393edb01de72d25e208a6ef4f069fb36f.tar.gz
gdb-181e7f9393edb01de72d25e208a6ef4f069fb36f.tar.bz2
Remove the attach_flag global, and make it per-inferior.
* inferior.h (attach_flag): Delete. (inferior_process): Declare. * solib.c (update_solib_list): Adjust. * gnu-nat.c (gnu_create_inferior, gnu_attach): Adjust. * inf-ptrace.c (inf_ptrace_detach): Adjust. (inf_ptrace_files_info): Get it from the current inferior. * inf-ttrace.c (inf_ttrace_attach): Adjust. (inf_ttrace_files_info): Get it from the current inferior. * inflow.c (terminal_inferior, terminal_ours_1, set_sigint_trap) (clear_sigint_trap): Get it from the current process. * remote.c (extended_remote_attach_1) (extended_remote_create_inferior_1): Adjust. * top.c (quit_confirm, quit_target): Get it from the current inferior. * procfs.c (do_detach): Adjust. (procfs_wait): Get it from the event inferior. (procfs_files_info): Get it from the current inferior. * nto-procfs.c (procfs_files_info): Likewise. (procfs_attach): Adjust. Set the attach_flag here. (do_attach): Don't set it here. (procfs_detach): Don't clear it. (procfs_mourn_inferior): Don't clear it. * solib-osf.c (osf_solib_create_inferior_hook): Adjust. * target.c (attach_flag): Delete. (generic_mourn_inferior): Don't clear it. * win32-nat.c (get_win32_debug_event): Get it from the event process. (do_initial_win32_stuff): Add attaching argument. Set attach_flag in the inferior accordingly. (win32_attach): Don't set the attach_flag here. Pass 1 to do_intial_win32_stuff. (win32_files_info): Get it from the current inferior. (win32_create_inferior): Dont clear attach_flag here. Pass 0 to do_intial_win32_stuff.
Diffstat (limited to 'gdb/inf-ptrace.c')
-rw-r--r--gdb/inf-ptrace.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/gdb/inf-ptrace.c b/gdb/inf-ptrace.c
index 797a70a..57af79a 100644
--- a/gdb/inf-ptrace.c
+++ b/gdb/inf-ptrace.c
@@ -212,6 +212,7 @@ inf_ptrace_attach (char *args, int from_tty)
char *exec_file;
pid_t pid;
char *dummy;
+ struct inferior *inf;
if (!args)
error_no_arg (_("process-id to attach"));
@@ -244,14 +245,14 @@ inf_ptrace_attach (char *args, int from_tty)
ptrace (PT_ATTACH, pid, (PTRACE_TYPE_ARG3)0, 0);
if (errno != 0)
perror_with_name (("ptrace"));
- attach_flag = 1;
#else
error (_("This system does not support attaching to a process"));
#endif
inferior_ptid = pid_to_ptid (pid);
- add_inferior (pid);
+ inf = add_inferior (pid);
+ inf->attach_flag = 1;
/* Always add a main thread. If some target extends the ptrace
target, it should decorate the ptid later with more info. */
@@ -307,7 +308,6 @@ inf_ptrace_detach (char *args, int from_tty)
ptrace (PT_DETACH, pid, (PTRACE_TYPE_ARG3)1, sig);
if (errno != 0)
perror_with_name (("ptrace"));
- attach_flag = 0;
#else
error (_("This system does not support detaching from a process"));
#endif
@@ -611,8 +611,10 @@ inf_ptrace_thread_alive (ptid_t ptid)
static void
inf_ptrace_files_info (struct target_ops *ignore)
{
+ struct inferior *inf = current_inferior ();
+
printf_filtered (_("\tUsing the running image of %s %s.\n"),
- attach_flag ? "attached" : "child",
+ inf->attach_flag ? "attached" : "child",
target_pid_to_str (inferior_ptid));
}