aboutsummaryrefslogtreecommitdiff
path: root/gdb/thread-db.c
diff options
context:
space:
mode:
authorAndrew Cagney <cagney@redhat.com>2004-09-08 19:44:22 +0000
committerAndrew Cagney <cagney@redhat.com>2004-09-08 19:44:22 +0000
commitb26a6851b5c525e74539c85ac34a5e1e417f18e0 (patch)
tree56d09a3c2e4c047a00a4cc83ae32cc922ba48a49 /gdb/thread-db.c
parentf6792ef4afa7992e19bb1e2e536881b1ffaa0606 (diff)
downloadgdb-b26a6851b5c525e74539c85ac34a5e1e417f18e0.zip
gdb-b26a6851b5c525e74539c85ac34a5e1e417f18e0.tar.gz
gdb-b26a6851b5c525e74539c85ac34a5e1e417f18e0.tar.bz2
2004-09-08 Andrew Cagney <cagney@gnu.org>
* thread-db.c (keep_thread_db): Delete. (thread_db_new_objfile, thread_db_create_inferior) (thread_db_mourn_inferior): Simplify assuming !keep_thread_db.
Diffstat (limited to 'gdb/thread-db.c')
-rw-r--r--gdb/thread-db.c40
1 files changed, 5 insertions, 35 deletions
diff --git a/gdb/thread-db.c b/gdb/thread-db.c
index 12af128..326bf72 100644
--- a/gdb/thread-db.c
+++ b/gdb/thread-db.c
@@ -63,10 +63,6 @@ static void (*target_new_objfile_chain) (struct objfile * objfile);
/* Non-zero if we're using this module's target vector. */
static int using_thread_db;
-/* Non-zero if we have to keep this module's target vector active
- across re-runs. */
-static int keep_thread_db;
-
/* Non-zero if we have determined the signals used by the threads
library. */
static int thread_signals;
@@ -673,8 +669,6 @@ thread_db_new_objfile (struct objfile *objfile)
using_thread_db = 0;
}
- keep_thread_db = 0;
-
goto quit;
}
@@ -703,18 +697,6 @@ thread_db_new_objfile (struct objfile *objfile)
push_target (&thread_db_ops);
using_thread_db = 1;
- /* If the thread library was detected in the main symbol file
- itself, we assume that the program was statically linked
- against the thread library and well have to keep this
- module's target vector activated until forever... Well, at
- least until all symbols have been discarded anyway (see
- above). */
- if (objfile == symfile_objfile)
- {
- gdb_assert (proc_handle.pid == 0);
- keep_thread_db = 1;
- }
-
/* We can only poke around if there actually is a child process.
If there is no child process alive, postpone the steps below
until one has been created. */
@@ -1106,12 +1088,8 @@ static void
thread_db_create_inferior (char *exec_file, char *allargs, char **env,
int from_tty)
{
- if (!keep_thread_db)
- {
- unpush_target (&thread_db_ops);
- using_thread_db = 0;
- }
-
+ unpush_target (&thread_db_ops);
+ using_thread_db = 0;
target_beneath->to_create_inferior (exec_file, allargs, env, from_tty);
}
@@ -1141,17 +1119,9 @@ thread_db_mourn_inferior (void)
target_beneath->to_mourn_inferior ();
- /* Detach thread_db target ops if not dealing with a statically
- linked threaded program. This allows a corefile to be debugged
- after finishing debugging of a threaded program. At present,
- debugging a statically-linked threaded program is broken, but
- the check is added below in the event that it is fixed in the
- future. */
- if (!keep_thread_db)
- {
- unpush_target (&thread_db_ops);
- using_thread_db = 0;
- }
+ /* Detach thread_db target ops. */
+ unpush_target (&thread_db_ops);
+ using_thread_db = 0;
}
static int