GDB hangs when attaching to process on mips-irix.
authorJoel Brobecker <brobecker@gnat.com>
Sat, 9 Jan 2010 04:40:02 +0000 (04:40 +0000)
committerJoel Brobecker <brobecker@gnat.com>
Sat, 9 Jan 2010 04:40:02 +0000 (04:40 +0000)
        * solib-irix.c (irix_solib_create_inferior_hook): Do nothing if
        attaching to a process.

gdb/ChangeLog
gdb/solib-irix.c

index b7fb8ce..4767db8 100644 (file)
@@ -1,5 +1,11 @@
 2010-01-09  Joel Brobecker  <brobecker@adacore.com>
 
+       GDB hangs when attaching to process on mips-irix.
+       * solib-irix.c (irix_solib_create_inferior_hook): Do nothing if
+       attaching to a process.
+
+2010-01-09  Joel Brobecker  <brobecker@adacore.com>
+
        Use the correct breakpoint instruction on mips-irix.
        * mips-tdep.c (mips_breakpoint_from_pc): Add new static variable
        containing the correct breakpoint instruction to use on mips-irix.
index 17f7240..ecd5c70 100644 (file)
@@ -442,6 +442,13 @@ irix_solib_create_inferior_hook (int from_tty)
   struct inferior *inf;
   struct thread_info *tp;
 
+  inf = current_inferior ();
+
+  /* If we are attaching to the inferior, the shared libraries
+     have already been mapped, so nothing more to do.  */
+  if (inf->attach_flag)
+    return;
+
   if (!enable_break ())
     {
       warning (_("shared library handler failed to enable breakpoint"));
@@ -453,7 +460,6 @@ irix_solib_create_inferior_hook (int from_tty)
      can go groveling around in the dynamic linker structures to find
      out what we need to know about them. */
 
-  inf = current_inferior ();
   tp = inferior_thread ();
 
   clear_proceed_status ();