Assertion failure after Ada task switch (target remote).
authorJoel Brobecker <brobecker@gnat.com>
Sun, 7 Mar 2010 14:36:45 +0000 (14:36 +0000)
committerJoel Brobecker <brobecker@gnat.com>
Sun, 7 Mar 2010 14:36:45 +0000 (14:36 +0000)
        * remote.c (remote_get_ada_task_ptid): New function.
        (init_remote_ops): Set remote_ops.to_get_ada_task_ptid.

gdb/ChangeLog
gdb/remote.c

index c45654b..78b5209 100644 (file)
@@ -1,3 +1,8 @@
+2010-03-07  Joel Brobecker  <brobecker@adacore.com>
+
+       * remote.c (remote_get_ada_task_ptid): New function.
+        (init_remote_ops): Set remote_ops.to_get_ada_task_ptid.
+
 2010-03-06  Christopher Faylor  <me+cygwin@cgf.cx>
 
        * windows-nat.c: Reorganize #ifdef __CYGWIN__ considerations into one
index 4b11060..01d558c 100644 (file)
@@ -2682,6 +2682,15 @@ remote_threads_extra_info (struct thread_info *tp)
 }
 \f
 
+/* Implement the to_get_ada_task_ptid function for the remote targets.  */
+
+static ptid_t
+remote_get_ada_task_ptid (long lwp, long thread)
+{
+  return ptid_build (ptid_get_pid (inferior_ptid), 0, lwp);
+}
+\f
+
 /* Restart the remote side; this is an extended protocol operation.  */
 
 static void
@@ -9685,6 +9694,7 @@ Specify the serial device it is connected to\n\
   remote_ops.to_find_new_threads = remote_threads_info;
   remote_ops.to_pid_to_str = remote_pid_to_str;
   remote_ops.to_extra_thread_info = remote_threads_extra_info;
+  remote_ops.to_get_ada_task_ptid = remote_get_ada_task_ptid;
   remote_ops.to_stop = remote_stop;
   remote_ops.to_xfer_partial = remote_xfer_partial;
   remote_ops.to_rcmd = remote_rcmd;
@@ -10244,3 +10254,4 @@ Show the remote pathname for \"run\""), NULL, NULL, NULL,
   target_buf_size = 2048;
   target_buf = xmalloc (target_buf_size);
 }
+