* ada-tasks (task_command_1): Call target_find_new_threads.

This commit is contained in:
Joel Brobecker 2009-04-23 18:55:20 +00:00
parent 465f42bbe4
commit 5e7b5f74c2
2 changed files with 13 additions and 0 deletions

View file

@ -1,3 +1,7 @@
2009-04-23 Joel Brobecker <brobecker@adacore.com>
* ada-tasks (task_command_1): Call target_find_new_threads.
2009-04-23 Joel Brobecker <brobecker@adacore.com>
* stack.c (do_gdb_disassembly): Print the exception message if an

View file

@ -865,6 +865,15 @@ task_command_1 (char *taskno_str, int from_tty)
if (!ada_task_is_alive (task_info))
error (_("Cannot switch to task %d: Task is no longer running"), taskno);
/* On some platforms, the thread list is not updated until the user
performs a thread-related operation (by using the "info threads"
command, for instance). So this thread list may not be up to date
when the user attempts this task switch. Since we cannot switch
to the thread associated to our task if GDB does not know about
that thread, we need to make sure that any new threads gets added
to the thread list. */
target_find_new_threads ();
switch_to_thread (task_info->ptid);
ada_find_printable_frame (get_selected_frame (NULL));
printf_filtered (_("[Switching to task %d]\n"), taskno);