forked from Imagelibrary/binutils-gdb
* target.h (struct target_ops) <to_has_execution>: Add ptid_t
parameter. (target_has_execution_1): Update. (target_has_execution_current): Declare. (target_has_execution): Call target_has_execution_current. (default_child_has_execution): Update. * target.c (default_child_has_execution): Add 'the_ptid' parameter. (target_has_execution_1): Likewise. (target_has_execution_current): New function. (add_target): Update. (init_dummy_target): Update. * remote-m32r-sdi.c (m32r_has_execution): New function. (init_m32r_ops): Use it. * record.c (record_core_has_execution): Now static. Add 'the_ptid' parameter. * inferior.c (have_live_inferiors): Don't save current thread. Use target_has_execution_1.
This commit is contained in:
@@ -462,28 +462,18 @@ have_inferiors (void)
|
||||
int
|
||||
have_live_inferiors (void)
|
||||
{
|
||||
struct cleanup *old_chain;
|
||||
struct inferior *inf;
|
||||
|
||||
old_chain = make_cleanup_restore_current_thread ();
|
||||
|
||||
for (inf = inferior_list; inf; inf = inf->next)
|
||||
if (inf->pid != 0)
|
||||
{
|
||||
struct thread_info *tp;
|
||||
|
||||
tp = any_thread_of_process (inf->pid);
|
||||
if (tp)
|
||||
{
|
||||
switch_to_thread (tp->ptid);
|
||||
|
||||
if (target_has_execution)
|
||||
break;
|
||||
}
|
||||
if (tp && target_has_execution_1 (tp->ptid))
|
||||
break;
|
||||
}
|
||||
|
||||
do_cleanups (old_chain);
|
||||
|
||||
return inf != NULL;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user