diff options
author | Jim Ingham <jingham@apple.com> | 2012-10-10 18:32:14 +0000 |
---|---|---|
committer | Jim Ingham <jingham@apple.com> | 2012-10-10 18:32:14 +0000 |
commit | 4f465cff8a1591a821d13c7fb34bfc56c1d1d96f (patch) | |
tree | efe067b447ee152883e2235bf3a95c23544d07c4 /lldb/source/Commands/CommandObjectThread.cpp | |
parent | 9a6717f647653eef94344f9d31239a1128998fa3 (diff) | |
download | bcm5719-llvm-4f465cff8a1591a821d13c7fb34bfc56c1d1d96f.tar.gz bcm5719-llvm-4f465cff8a1591a821d13c7fb34bfc56c1d1d96f.zip |
Change the Thread constructor over to take a Process& rather than a ProcessSP. We can't create Threads with a NULL ProcessSP, so it makes no sense to use the SP.
Then make the Thread a Broadcaster, and get it to broadcast when the selected frame is changed (but only from the Command Line) and when Thread::ReturnFromFrame
changes the stack.
Made the Driver use this notification to print the new thread status rather than doing it in the command.
Fixed a few places where people were setting their broadcaster class by hand rather than using the static broadcaster class call.
<rdar://problem/12383087>
llvm-svn: 165640
Diffstat (limited to 'lldb/source/Commands/CommandObjectThread.cpp')
-rw-r--r-- | lldb/source/Commands/CommandObjectThread.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lldb/source/Commands/CommandObjectThread.cpp b/lldb/source/Commands/CommandObjectThread.cpp index a2c3e6a3429..8c2be3792e7 100644 --- a/lldb/source/Commands/CommandObjectThread.cpp +++ b/lldb/source/Commands/CommandObjectThread.cpp @@ -1338,7 +1338,8 @@ protected: Error error; ThreadSP thread_sp = exe_ctx.GetThreadSP(); - error = thread_sp->ReturnFromFrame (frame_sp, return_valobj_sp); + const bool broadcast = true; + error = thread_sp->ReturnFromFrame (frame_sp, return_valobj_sp, broadcast); if (!error.Success()) { result.AppendErrorWithFormat("Error returning from frame %d of thread %d: %s.", frame_idx, thread_sp->GetIndexID(), error.AsCString()); @@ -1346,7 +1347,6 @@ protected: return false; } - thread_sp->GetStatus(result.GetOutputStream(), 0, 1, 1); result.SetStatus (eReturnStatusSuccessFinishResult); return true; } |