* win32-nat.c (do_initial_win32_stuff): Add new ops parameter,

and use it when pushing the target.
        (win32_attach, win32_create_inferior): Update call to
        do_initial_win32_stuff.
        (win32_detach, win32_mourn_inferior): Use our ops parameter
        instead of the global win32_ops to unpush the target.
This commit is contained in:
Joel Brobecker 2009-01-09 10:36:00 +00:00
parent 1be7fe8dba
commit 0795be10ed
3 changed files with 21 additions and 12 deletions

View File

@ -1,3 +1,12 @@
2009-01-07 Joel Brobecker <brobecker@adacore.com>
* win32-nat.c (do_initial_win32_stuff): Add new ops parameter,
and use it when pushing the target.
(win32_attach, win32_create_inferior): Update call to
do_initial_win32_stuff.
(win32_detach, win32_mourn_inferior): Use our ops parameter
instead of the global win32_ops to unpush the target.
2009-01-09 Joel Brobecker <brobecker@adacore.com>
* ser-mingw.c (ser_windows_open): Use proper type when casting

View File

@ -1521,7 +1521,7 @@ win32_wait (ptid_t ptid, struct target_waitstatus *ourstatus)
}
static void
do_initial_win32_stuff (DWORD pid, int attaching)
do_initial_win32_stuff (struct target_ops *ops, DWORD pid, int attaching)
{
extern int stop_after_trap;
int i;
@ -1541,7 +1541,7 @@ do_initial_win32_stuff (DWORD pid, int attaching)
#endif
current_event.dwProcessId = pid;
memset (&current_event, 0, sizeof (current_event));
push_target (&win32_ops);
push_target (ops);
disable_breakpoints_in_shlibs ();
win32_clear_solib ();
clear_proceed_status ();
@ -1735,7 +1735,7 @@ win32_attach (struct target_ops *ops, char *args, int from_tty)
gdb_flush (gdb_stdout);
}
do_initial_win32_stuff (pid, 1);
do_initial_win32_stuff (ops, pid, 1);
target_terminal_ours ();
}
@ -1770,7 +1770,7 @@ win32_detach (struct target_ops *ops, char *args, int from_tty)
inferior_ptid = null_ptid;
detach_inferior (current_event.dwProcessId);
unpush_target (&win32_ops);
unpush_target (ops);
}
static char *
@ -1945,7 +1945,7 @@ win32_create_inferior (struct target_ops *ops, char *exec_file,
else
saw_create = 0;
do_initial_win32_stuff (pi.dwProcessId, 0);
do_initial_win32_stuff (ops, pi.dwProcessId, 0);
/* win32_continue (DBG_CONTINUE, -1); */
}
@ -1960,7 +1960,7 @@ win32_mourn_inferior (struct target_ops *ops)
CHECK (CloseHandle (current_process_handle));
open_process_used = 0;
}
unpush_target (&win32_ops);
unpush_target (ops);
generic_mourn_inferior ();
}

View File

@ -1521,7 +1521,7 @@ win32_wait (ptid_t ptid, struct target_waitstatus *ourstatus)
}
static void
do_initial_win32_stuff (DWORD pid, int attaching)
do_initial_win32_stuff (struct target_ops *ops, DWORD pid, int attaching)
{
extern int stop_after_trap;
int i;
@ -1541,7 +1541,7 @@ do_initial_win32_stuff (DWORD pid, int attaching)
#endif
current_event.dwProcessId = pid;
memset (&current_event, 0, sizeof (current_event));
push_target (&win32_ops);
push_target (ops);
disable_breakpoints_in_shlibs ();
win32_clear_solib ();
clear_proceed_status ();
@ -1735,7 +1735,7 @@ win32_attach (struct target_ops *ops, char *args, int from_tty)
gdb_flush (gdb_stdout);
}
do_initial_win32_stuff (pid, 1);
do_initial_win32_stuff (ops, pid, 1);
target_terminal_ours ();
}
@ -1770,7 +1770,7 @@ win32_detach (struct target_ops *ops, char *args, int from_tty)
inferior_ptid = null_ptid;
detach_inferior (current_event.dwProcessId);
unpush_target (&win32_ops);
unpush_target (ops);
}
static char *
@ -1945,7 +1945,7 @@ win32_create_inferior (struct target_ops *ops, char *exec_file,
else
saw_create = 0;
do_initial_win32_stuff (pi.dwProcessId, 0);
do_initial_win32_stuff (ops, pi.dwProcessId, 0);
/* win32_continue (DBG_CONTINUE, -1); */
}
@ -1960,7 +1960,7 @@ win32_mourn_inferior (struct target_ops *ops)
CHECK (CloseHandle (current_process_handle));
open_process_used = 0;
}
unpush_target (&win32_ops);
unpush_target (ops);
generic_mourn_inferior ();
}