================
@@ -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

Reply via email to