Make sure the OperatingSystem plug-ins will work on linux as well. This goes with...
authorGreg Clayton <gclayton@apple.com>
Tue, 7 Apr 2015 22:23:53 +0000 (22:23 +0000)
committerGreg Clayton <gclayton@apple.com>
Tue, 7 Apr 2015 22:23:53 +0000 (22:23 +0000)
llvm-svn: 234366

lldb/source/Plugins/Process/POSIX/POSIXThread.cpp

index 1057585..2749301 100644 (file)
@@ -512,7 +512,10 @@ POSIXThread::BreakNotify(const ProcessMessage &message)
     if (bp_site)
     {
         lldb::break_id_t bp_id = bp_site->GetID();
-        if (bp_site->ValidForThisThread(this))
+        // If we have an operating system plug-in, we might have set a thread specific breakpoint using the
+        // operating system thread ID, so we can't make any assumptions about the thread ID so we must always
+        // report the breakpoint regardless of the thread.
+        if (bp_site->ValidForThisThread(this) || thread.GetProcess()->GetOperatingSystem () != NULL)
             SetStopInfo (StopInfo::CreateStopReasonWithBreakpointSiteID(*this, bp_id));
         else
         {