aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2021-12-26 22:03:09 -0700
committerTom Tromey <tom@tromey.com>2022-01-06 08:56:20 -0700
commit41e321a8973edf99f69eb3f11cc076a69be726af (patch)
tree449b72055dc8ecd8394d052cfda9a1947240272b
parentbc521517b7058a231a08bf8f3deae7cd41cd62d7 (diff)
downloadgdb-41e321a8973edf99f69eb3f11cc076a69be726af.zip
gdb-41e321a8973edf99f69eb3f11cc076a69be726af.tar.gz
gdb-41e321a8973edf99f69eb3f11cc076a69be726af.tar.bz2
Use target_announce_detach in more targets
target_announce_detach was added in commit 0f48b757 ("Factor out "Detaching from program" message printing"). There, Pedro wrote: (For now, I left the couple targets that print this a bit differently alone. Maybe this could be further pulled out into infcmd.c. If we did that, and those targets want to continue printing differently, this new function could be converted to a target method.) It seems to me that the differences aren't very big, and in some cases other targets handled the output a bit more nicely. In particular, some targets will print a different message when exec_file==NULL, rather than printing the same output with an empty string as exec_file. This patch incorporates the nicer output into target_announce_detach, then changes the remaining ports to use this function.
-rw-r--r--gdb/gnu-nat.c11
-rw-r--r--gdb/procfs.c14
-rw-r--r--gdb/target.c13
-rw-r--r--gdb/windows-nat.c10
4 files changed, 11 insertions, 37 deletions
diff --git a/gdb/gnu-nat.c b/gdb/gnu-nat.c
index f99aeb1..1d3b5f1 100644
--- a/gdb/gnu-nat.c
+++ b/gdb/gnu-nat.c
@@ -2215,16 +2215,7 @@ gnu_nat_target::attach (const char *args, int from_tty)
void
gnu_nat_target::detach (inferior *inf, int from_tty)
{
- if (from_tty)
- {
- const char *exec_file = get_exec_file (0);
-
- if (exec_file)
- printf_unfiltered ("Detaching from program `%s' pid %d\n",
- exec_file, gnu_current_inf->pid);
- else
- printf_unfiltered ("Detaching from pid %d\n", gnu_current_inf->pid);
- }
+ target_announce_detach (from_tty);
inf_detach (gnu_current_inf);
diff --git a/gdb/procfs.c b/gdb/procfs.c
index ddc8623..840201d 100644
--- a/gdb/procfs.c
+++ b/gdb/procfs.c
@@ -1786,19 +1786,7 @@ procfs_target::attach (const char *args, int from_tty)
void
procfs_target::detach (inferior *inf, int from_tty)
{
- int pid = inferior_ptid.pid ();
-
- if (from_tty)
- {
- const char *exec_file;
-
- exec_file = get_exec_file (0);
- if (exec_file == NULL)
- exec_file = "";
-
- printf_filtered (_("Detaching from program: %s, %s\n"), exec_file,
- target_pid_to_str (ptid_t (pid)).c_str ());
- }
+ target_announce_detach (from_tty);
do_detach ();
diff --git a/gdb/target.c b/gdb/target.c
index a48845d..c25ce69 100644
--- a/gdb/target.c
+++ b/gdb/target.c
@@ -3628,13 +3628,14 @@ target_announce_detach (int from_tty)
if (!from_tty)
return;
- exec_file = get_exec_file (0);
- if (exec_file == NULL)
- exec_file = "";
-
pid = inferior_ptid.pid ();
- printf_unfiltered (_("Detaching from program: %s, %s\n"), exec_file,
- target_pid_to_str (ptid_t (pid)).c_str ());
+ exec_file = get_exec_file (0);
+ if (exec_file == nullptr)
+ printf_unfiltered ("Detaching from pid %s\n",
+ target_pid_to_str (ptid_t (pid)).c_str ());
+ else
+ printf_unfiltered (_("Detaching from program: %s, %s\n"), exec_file,
+ target_pid_to_str (ptid_t (pid)).c_str ());
}
/* See target.h */
diff --git a/gdb/windows-nat.c b/gdb/windows-nat.c
index c85f7c0..bdf6ac9 100644
--- a/gdb/windows-nat.c
+++ b/gdb/windows-nat.c
@@ -1962,14 +1962,8 @@ windows_nat_target::detach (inferior *inf, int from_tty)
}
DebugSetProcessKillOnExit (FALSE);
- if (detached && from_tty)
- {
- const char *exec_file = get_exec_file (0);
- if (exec_file == 0)
- exec_file = "";
- printf_unfiltered ("Detaching from program: %s, Pid %u\n", exec_file,
- (unsigned) current_event.dwProcessId);
- }
+ if (detached)
+ target_announce_detach (from_tty);
x86_cleanup_dregs ();
switch_to_no_thread ();