================
@@ -1495,58 +1495,85 @@ StackFrameListSP Thread::GetStackFrameList() {
}
// Create the frame list based on whether we have providers.
- if (!m_frame_providers.empty()) {
+ if (!m_provider_chain_ids.empty()) {
// We have providers - use the last one in the chain.
// The last provider has already been chained with all previous providers.
- StackFrameListSP input_frames = m_frame_providers.back()->GetInputFrames();
- m_curr_frames_sp = std::make_shared<SyntheticStackFrameList>(
- *this, input_frames, m_prev_frames_sp, true, m_frame_providers.back());
+ auto last_desc_id_pair = m_provider_chain_ids.back();
+ uint64_t last_id = last_desc_id_pair.second;
+ auto it = m_frame_providers.find(last_desc_id_pair.second);
+ if (it != m_frame_providers.end()) {
----------------
medismailben wrote:
Good catch! I added logging and returned the unwinder StackFrameList in case
the lookup failed.
https://github.com/llvm/llvm-project/pull/178823
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits