2007-06-13 Mike Frysinger <vapier@gentoo.org>
[deliverable/binutils-gdb.git] / gdb / linux-thread-db.c
index 933ab04f78f76c08779a69f025c0de63db74b821..eb7bb80720641c8b85e430847e8ad11f30ed6793 100644 (file)
@@ -37,6 +37,7 @@
 #include "regcache.h"
 #include "solib-svr4.h"
 #include "gdbcore.h"
+#include "observer.h"
 #include "linux-nat.h"
 
 #include <signal.h>
@@ -58,9 +59,6 @@ static struct target_ops thread_db_ops;
 /* The target vector that we call for things this module can't handle.  */
 static struct target_ops *target_beneath;
 
-/* Pointer to the next function on the objfile event chain.  */
-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;
 
@@ -482,7 +480,7 @@ enable_thread_event_reporting (void)
 
 #ifdef HAVE_GNU_LIBC_VERSION_H
   /* The event reporting facility is broken for TD_DEATH events in
-     glibc 2.1.3, so don't enable it we have glibc but a lower
+     glibc 2.1.3, so don't enable it if we have glibc but a lower
      version.  */
   libc_version = gnu_get_libc_version ();
   if (sscanf (libc_version, "%d.%d", &libc_major, &libc_minor) == 2
@@ -650,9 +648,6 @@ thread_db_new_objfile (struct objfile *objfile)
 {
   if (objfile != NULL)
     check_for_thread_db ();
-
-  if (target_new_objfile_chain)
-    target_new_objfile_chain (objfile);
 }
 
 /* Attach to a new thread.  This function is called when we receive a
@@ -809,7 +804,7 @@ check_event (ptid_t ptid)
   int loop = 0;
 
   /* Bail out early if we're not at a thread event breakpoint.  */
-  stop_pc = read_pc_pid (ptid) - DECR_PC_AFTER_BREAK;
+  stop_pc = read_pc_pid (ptid) - gdbarch_decr_pc_after_break (current_gdbarch);
   if (stop_pc != td_create_bp_addr && stop_pc != td_death_bp_addr)
     return;
 
@@ -1018,10 +1013,10 @@ thread_db_pid_to_str (ptid_t ptid)
 
       thread_info = find_thread_pid (ptid);
       if (thread_info == NULL)
-       snprintf (buf, sizeof (buf), "Thread %ld (LWP %ld) (Missing)",
+       snprintf (buf, sizeof (buf), "Thread 0x%lx (LWP %ld) (Missing)",
                  GET_THREAD (ptid), GET_LWP (ptid));
       else
-       snprintf (buf, sizeof (buf), "Thread %ld (LWP %ld)",
+       snprintf (buf, sizeof (buf), "Thread 0x%lx (LWP %ld)",
                  GET_THREAD (ptid), GET_LWP (ptid));
 
       return buf;
@@ -1140,7 +1135,6 @@ _initialize_thread_db (void)
       add_target (&thread_db_ops);
 
       /* Add ourselves to objfile event chain.  */
-      target_new_objfile_chain = deprecated_target_new_objfile_hook;
-      deprecated_target_new_objfile_hook = thread_db_new_objfile;
+      observer_attach_new_objfile (thread_db_new_objfile);
     }
 }
This page took 0.024101 seconds and 4 git commands to generate.