Skip to content

Commit

Permalink
Fix TestThreadSpecificBreakpoint.py on Linux after rL252355.
Browse files Browse the repository at this point in the history
Summary:
On Linux, if a thread-specific conditional breakpoint was hit, it
won't necessarily be the thread that hit the breakpoint itself that
evaluates the conditional expression, so the thread that hit the
breakpoint could still be asked to stop, even though it hasn't been
allowed to run since the previous stop.

Reviewers: sivachandra, jingham

Subscribers: lldb-commits

Differential Revision: http://reviews.llvm.org/D14472

llvm-svn: 252391
  • Loading branch information
chaoren committed Nov 7, 2015
1 parent 7123e2b commit 6e8fbc6
Showing 1 changed file with 5 additions and 1 deletion.
6 changes: 5 additions & 1 deletion lldb/source/Target/ThreadList.cpp
Expand Up @@ -262,7 +262,11 @@ ThreadList::ShouldStop (Event *event_ptr)
// This is an optimization... If we didn't let a thread run in between the previous stop and this
// one, we shouldn't have to consult it for ShouldStop. So just leave it off the list we are going to
// inspect.
if (thread_sp->GetTemporaryResumeState () != eStateSuspended)
// On Linux, if a thread-specific conditional breakpoint was hit, it won't necessarily be the thread
// that hit the breakpoint itself that evaluates the conditional expression, so the thread that hit
// the breakpoint could still be asked to stop, even though it hasn't been allowed to run since the
// previous stop.
if (thread_sp->GetTemporaryResumeState () != eStateSuspended || thread_sp->IsStillAtLastBreakpointHit())
threads_copy.push_back(thread_sp);
}

Expand Down

0 comments on commit 6e8fbc6

Please sign in to comment.