diff options
author | Jason Molenda <jmolenda@apple.com> | 2013-11-11 05:20:44 +0000 |
---|---|---|
committer | Jason Molenda <jmolenda@apple.com> | 2013-11-11 05:20:44 +0000 |
commit | 864f1cc065077c7de5028c62b5a6018e749791bf (patch) | |
tree | c7b5b9057421120061aef6f9172d4e37c03b96a6 /lldb/source/Target/Process.cpp | |
parent | 7a2f7904bf45ecc5c903389a6d6d4b7c16314621 (diff) | |
download | bcm5719-llvm-864f1cc065077c7de5028c62b5a6018e749791bf.tar.gz bcm5719-llvm-864f1cc065077c7de5028c62b5a6018e749791bf.zip |
The Threads created when requesting extended backtraces need to be owned by
something; add a new ExtendedThreadList to Process where they can be retained
for the duration of a public stop.
<rdar://problem/15314068>
llvm-svn: 194367
Diffstat (limited to 'lldb/source/Target/Process.cpp')
-rw-r--r-- | lldb/source/Target/Process.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lldb/source/Target/Process.cpp b/lldb/source/Target/Process.cpp index 93edfdba407..1fe9ae9ca76 100644 --- a/lldb/source/Target/Process.cpp +++ b/lldb/source/Target/Process.cpp @@ -1023,6 +1023,7 @@ Process::Process(Target &target, Listener &listener) : m_thread_mutex (Mutex::eMutexTypeRecursive), m_thread_list_real (this), m_thread_list (this), + m_extended_thread_list (this), m_notifications (), m_image_tokens (), m_listener (listener), @@ -1148,6 +1149,7 @@ Process::Finalize() m_dyld_ap.reset(); m_thread_list_real.Destroy(); m_thread_list.Destroy(); + m_extended_thread_list.Destroy(); std::vector<Notifications> empty_notifications; m_notifications.swap(empty_notifications); m_image_tokens.clear(); @@ -1592,6 +1594,8 @@ Process::UpdateThreadListIfNeeded () m_thread_list.Update (new_thread_list); m_thread_list.SetStopID (stop_id); } + // Clear any extended threads that we may have accumulated previously + m_extended_thread_list.Clear(); } } } |