diff options
Diffstat (limited to 'lldb/test/functionalities/thread/concurrent_events/TestConcurrentEvents.py')
| -rw-r--r-- | lldb/test/functionalities/thread/concurrent_events/TestConcurrentEvents.py | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/lldb/test/functionalities/thread/concurrent_events/TestConcurrentEvents.py b/lldb/test/functionalities/thread/concurrent_events/TestConcurrentEvents.py index 287a8422809..192bcf2ba9a 100644 --- a/lldb/test/functionalities/thread/concurrent_events/TestConcurrentEvents.py +++ b/lldb/test/functionalities/thread/concurrent_events/TestConcurrentEvents.py @@ -390,6 +390,13 @@ class ConcurrentEventsTestCase(TestBase): self.crash_count > 0 or \ self.inferior_process.GetState() == lldb.eStateExited + def count_signaled_threads(self): + count = 0 + for thread in self.inferior_process: + if thread.GetStopReason() == lldb.eStopReasonSignal and thread.GetStopReasonDataAtIndex(0) == self.inferior_process.GetUnixSignals().GetSignalNumberFromName('SIGUSR1'): + count += 1 + return count + def do_thread_actions(self, num_breakpoint_threads = 0, num_signal_threads = 0, @@ -470,16 +477,16 @@ class ConcurrentEventsTestCase(TestBase): num_threads, "\n\t".join(self.describe_threads()))) - self.signal_count = len(lldbutil.get_stopped_threads(self.inferior_process, lldb.eStopReasonSignal)) - self.crash_count = len(lldbutil.get_stopped_threads(self.inferior_process, lldb.eStopReasonException)) + self.signal_count = self.count_signaled_threads() + self.crash_count = len(lldbutil.get_crashed_threads(self, self.inferior_process)) # Run to completion (or crash) while not self.inferior_done(): if self.TraceOn(): self.runCmd("thread backtrace all") self.runCmd("continue") - self.signal_count += len(lldbutil.get_stopped_threads(self.inferior_process, lldb.eStopReasonSignal)) - self.crash_count += len(lldbutil.get_stopped_threads(self.inferior_process, lldb.eStopReasonException)) + self.signal_count += self.count_signaled_threads() + self.crash_count += len(lldbutil.get_crashed_threads(self, self.inferior_process)) if num_crash_threads > 0 or num_delay_crash_threads > 0: # Expecting a crash |

