aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.h
diff options
context:
space:
mode:
authorGreg Clayton <gclayton@apple.com>2013-05-09 01:55:29 +0000
committerGreg Clayton <gclayton@apple.com>2013-05-09 01:55:29 +0000
commit6e0ff1a3cb5a1719c12ce156c4297d724c20b955 (patch)
tree2ea43845a7393dc9bb2df095f72b25a3393ca914 /lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.h
parent083fcdb41448362b803c47fe85dfeb830d25220c (diff)
downloadllvm-6e0ff1a3cb5a1719c12ce156c4297d724c20b955.zip
llvm-6e0ff1a3cb5a1719c12ce156c4297d724c20b955.tar.gz
llvm-6e0ff1a3cb5a1719c12ce156c4297d724c20b955.tar.bz2
Changed the formerly pure virtual function:
namespace lldb_private { class Thread { virtual lldb::StopInfoSP GetPrivateStopReason() = 0; }; } To not be virtual. The lldb_private::Thread now handles the correct caching and will call a new pure virtual function: namespace lldb_private { class Thread { virtual bool CalculateStopInfo() = 0; } } This function must be overridden by thead lldb_private::Thread subclass and the only thing it needs to do is to set the Thread::StopInfo() with the current stop reason and return true, or return false if there is no stop reason. The lldb_private::Thread class will take care of calling this function only when it is required. This allows lldb_private::Thread subclasses to be a bit simpler and not all need to duplicate the cache and invalidation settings. Also renamed: lldb::StopInfoSP lldb_private::Thread::GetPrivateStopReason(); To: lldb::StopInfoSP lldb_private::Thread::GetPrivateStopInfo(); Also cleaned up a case where the ThreadPlanStepOverBreakpoint might not re-set its breakpoint if the thread disappears (which was happening due to a bug when using the OperatingSystem plug-ins with memory threads and real threads). llvm-svn: 181501
Diffstat (limited to 'lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.h')
-rw-r--r--lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.h b/lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.h
index 8dfc4bb..50a3f19 100644
--- a/lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.h
+++ b/lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.h
@@ -98,8 +98,8 @@ protected:
void
SetStopInfoFromPacket (StringExtractor &stop_packet, uint32_t stop_id);
- virtual lldb::StopInfoSP
- GetPrivateStopReason ();
+ virtual bool
+ CalculateStopInfo ();
};