diff options
author | Jason Molenda <jmolenda@apple.com> | 2014-04-25 00:01:15 +0000 |
---|---|---|
committer | Jason Molenda <jmolenda@apple.com> | 2014-04-25 00:01:15 +0000 |
commit | b9ffa98cab65ecb1e66a194bb9641735ef8e7eb2 (patch) | |
tree | 7b08a842255de003f00d2be36defedfa72537ef1 /lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp | |
parent | 5ad11841f7fe4ae35165e34fb5574f2e4e8499ed (diff) | |
download | llvm-b9ffa98cab65ecb1e66a194bb9641735ef8e7eb2.zip llvm-b9ffa98cab65ecb1e66a194bb9641735ef8e7eb2.tar.gz llvm-b9ffa98cab65ecb1e66a194bb9641735ef8e7eb2.tar.bz2 |
Add a new SBThread::GetQueue() method to get the queue that is
currently associated with a given thread, on relevant targets.
Change the queue detection code to verify that the queues
associated with all live threads are included in the list.
<rdar://problem/16411314>
llvm-svn: 207160
Diffstat (limited to 'lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp')
-rw-r--r-- | lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp b/lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp index 395f8c6..79893cf 100644 --- a/lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp +++ b/lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp @@ -107,6 +107,22 @@ ThreadGDBRemote::GetQueueID () return LLDB_INVALID_QUEUE_ID; } +QueueSP +ThreadGDBRemote::GetQueue () +{ + queue_id_t queue_id = GetQueueID(); + QueueSP queue; + if (queue_id != LLDB_INVALID_QUEUE_ID) + { + ProcessSP process_sp (GetProcess()); + if (process_sp) + { + queue = process_sp->GetQueueList().FindQueueByID (queue_id); + } + } + return queue; +} + addr_t ThreadGDBRemote::GetQueueLibdispatchQueueAddress () { |