diff options
Diffstat (limited to 'gdb/ravenscar-thread.c')
-rw-r--r-- | gdb/ravenscar-thread.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/gdb/ravenscar-thread.c b/gdb/ravenscar-thread.c index 5f040cece07..60fc3530ce2 100644 --- a/gdb/ravenscar-thread.c +++ b/gdb/ravenscar-thread.c @@ -120,12 +120,16 @@ struct ravenscar_thread_target final : public target_ops ptid_t get_ada_task_ptid (long lwp, ULONGEST thread) override; - struct btrace_target_info *enable_btrace (ptid_t ptid, + struct btrace_target_info *enable_btrace (thread_info *tp, const struct btrace_config *conf) override { - ptid = get_base_thread_from_ravenscar_task (ptid); - return beneath ()->enable_btrace (ptid, conf); + process_stratum_target *proc_target + = as_process_stratum_target (this->beneath ()); + ptid_t underlying = get_base_thread_from_ravenscar_task (tp->ptid); + tp = find_thread_ptid (proc_target, underlying); + + return beneath ()->enable_btrace (tp, conf); } void mourn_inferior () override; |