X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gdb%2Fthread.c;h=65890e1528b348278625665567e6745c86a59b55;hb=08f9f542cb977e0f69c407ad90c6809ec04a737e;hp=78851e462d0eeb3668114ec2c52753b2f8cb1f23;hpb=054e8d9e20cf24e4b4fea6f46f289cf0475746ea;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/thread.c b/gdb/thread.c index 78851e462d..65890e1528 100644 --- a/gdb/thread.c +++ b/gdb/thread.c @@ -1,6 +1,6 @@ /* Multi-process/thread control for GDB, the GNU debugger. - Copyright (C) 1986-2013 Free Software Foundation, Inc. + Copyright (C) 1986-2014 Free Software Foundation, Inc. Contributed by Lynx Real-Time Systems, Inc. Los Gatos, CA. @@ -32,7 +32,6 @@ #include "gdbcmd.h" #include "regcache.h" #include "gdb.h" -#include "gdb_string.h" #include "btrace.h" #include @@ -647,18 +646,6 @@ is_running (ptid_t ptid) return is_thread_state (ptid, THREAD_RUNNING); } -int -any_running (void) -{ - struct thread_info *tp; - - for (tp = thread_list; tp; tp = tp->next) - if (tp->state == THREAD_RUNNING) - return 1; - - return 0; -} - int is_executing (ptid_t ptid) { @@ -810,7 +797,7 @@ print_thread_info (struct ui_out *uiout, char *requested_threads, int pid) if (!number_is_in_list (requested_threads, tp->num)) continue; - if (pid != -1 && PIDGET (tp->ptid) != pid) + if (pid != -1 && ptid_get_pid (tp->ptid) != pid) continue; if (tp->state == THREAD_EXITED) @@ -847,7 +834,7 @@ print_thread_info (struct ui_out *uiout, char *requested_threads, int pid) if (!number_is_in_list (requested_threads, tp->num)) continue; - if (pid != -1 && PIDGET (tp->ptid) != pid) + if (pid != -1 && ptid_get_pid (tp->ptid) != pid) { if (requested_threads != NULL && *requested_threads != '\0') error (_("Requested thread not found in requested process")); @@ -929,7 +916,7 @@ print_thread_info (struct ui_out *uiout, char *requested_threads, int pid) print_stack_frame (get_selected_frame (NULL), /* For MI output, print frame level. */ ui_out_is_mi_like_p (uiout), - LOCATION); + LOCATION, 0); } if (ui_out_is_mi_like_p (uiout)) @@ -1077,12 +1064,12 @@ restore_selected_frame (struct frame_id a_frame_id, int frame_level) if (frame_level > 0 && !ui_out_is_mi_like_p (current_uiout)) { warning (_("Couldn't restore frame #%d in " - "current thread, at reparsed frame #0\n"), + "current thread. Bottom (innermost) frame selected:"), frame_level); /* For MI, we should probably have a notification about current frame change. But this error is not very likely, so don't bother for now. */ - print_stack_frame (get_selected_frame (NULL), 1, SRC_LINE); + print_stack_frame (get_selected_frame (NULL), 1, SRC_AND_LOC, 1); } } @@ -1243,7 +1230,7 @@ thread_apply_all_command (char *cmd, int from_tty) ta_cleanup.tp_array = tp_array; ta_cleanup.count = tc; - ALL_THREADS (tp) + ALL_NON_EXITED_THREADS (tp) { tp_array[i] = tp; tp->refcount++; @@ -1467,7 +1454,7 @@ do_captured_thread_select (struct ui_out *uiout, void *tidstr) else { ui_out_text (uiout, "\n"); - print_stack_frame (get_selected_frame (NULL), 1, SRC_AND_LOC); + print_stack_frame (get_selected_frame (NULL), 1, SRC_AND_LOC, 1); } /* Since the current thread may have changed, see if there is any