diff options
Diffstat (limited to 'gdb/process-stratum-target.c')
-rw-r--r-- | gdb/process-stratum-target.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/gdb/process-stratum-target.c b/gdb/process-stratum-target.c index f3fd9ee..9eff5ab 100644 --- a/gdb/process-stratum-target.c +++ b/gdb/process-stratum-target.c @@ -83,3 +83,28 @@ process_stratum_target::has_execution (inferior *inf) through hoops. */ return inf->pid != 0; } + +/* See process-stratum-target.h. */ + +std::set<process_stratum_target *> +all_non_exited_process_targets () +{ + /* Inferiors may share targets. To eliminate duplicates, use a set. */ + std::set<process_stratum_target *> targets; + for (inferior *inf : all_non_exited_inferiors ()) + targets.insert (inf->process_target ()); + + return targets; +} + +/* See process-stratum-target.h. */ + +void +switch_to_target_no_thread (process_stratum_target *target) +{ + for (inferior *inf : all_inferiors (target)) + { + switch_to_inferior_no_thread (inf); + break; + } +} |