aboutsummaryrefslogtreecommitdiff
path: root/gdb/inflow.c
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2008-10-27 22:37:20 +0000
committerPedro Alves <palves@redhat.com>2008-10-27 22:37:20 +0000
commit5a55c295aa3da4f5f157e7c65359e1e18a1a4cea (patch)
treebc316ae20a0f9497517a83dc3f700021b7fb510b /gdb/inflow.c
parent5256a53bb3fbf514d1e9a1fed84ce57d7a94ecc8 (diff)
downloadgdb-5a55c295aa3da4f5f157e7c65359e1e18a1a4cea.zip
gdb-5a55c295aa3da4f5f157e7c65359e1e18a1a4cea.tar.gz
gdb-5a55c295aa3da4f5f157e7c65359e1e18a1a4cea.tar.bz2
* inflow.c (kill_command): If the target claims there is still
execution, don't clear the thread list.
Diffstat (limited to 'gdb/inflow.c')
-rw-r--r--gdb/inflow.c19
1 files changed, 12 insertions, 7 deletions
diff --git a/gdb/inflow.c b/gdb/inflow.c
index 2ba2a34..e82514e 100644
--- a/gdb/inflow.c
+++ b/gdb/inflow.c
@@ -601,14 +601,19 @@ kill_command (char *arg, int from_tty)
error (_("Not confirmed."));
target_kill ();
- init_thread_list (); /* Destroy thread info */
-
- /* Killing off the inferior can leave us with a core file. If so,
- print the state we are left in. */
- if (target_has_stack)
+ /* If the current target interface claims there's still execution,
+ then don't mess with threads of other processes. */
+ if (!target_has_execution)
{
- printf_filtered (_("In %s,\n"), target_longname);
- print_stack_frame (get_selected_frame (NULL), 1, SRC_AND_LOC);
+ init_thread_list (); /* Destroy thread info */
+
+ /* Killing off the inferior can leave us with a core file. If
+ so, print the state we are left in. */
+ if (target_has_stack)
+ {
+ printf_filtered (_("In %s,\n"), target_longname);
+ print_stack_frame (get_selected_frame (NULL), 1, SRC_AND_LOC);
+ }
}
bfd_cache_close_all ();
}