summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/api/multiple-debuggers/multi-process-driver.cpp
diff options
context:
space:
mode:
authorJason Molenda <jmolenda@apple.com>2017-02-24 03:35:46 +0000
committerJason Molenda <jmolenda@apple.com>2017-02-24 03:35:46 +0000
commit1e7ecd3e64461bc001495239eb168b0748d29c3d (patch)
tree66ad2b64f26cbe277883ac93d403087aaebd1e99 /lldb/packages/Python/lldbsuite/test/api/multiple-debuggers/multi-process-driver.cpp
parent9a2bba7251ab552b941d3964d6cb6f2b54fd14c0 (diff)
downloadbcm5719-llvm-1e7ecd3e64461bc001495239eb168b0748d29c3d.tar.gz
bcm5719-llvm-1e7ecd3e64461bc001495239eb168b0748d29c3d.zip
Fix a race condition in FuncUnwinders where the mutex was being
acquired only after checking if the ivar shared pointer was already filled in. But when I assign an UnwindPlan object to the shared pointer, I assign an empty object and then fill it in. That leaves a window where another thread could get the shared pointer to the empty (but quickly being-filled-in) object and lead to a crash. Also two changes from Greg for correctness on the TestMultipleDebuggers test case. <rdar://problem/30564102> llvm-svn: 296084
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/api/multiple-debuggers/multi-process-driver.cpp')
-rw-r--r--lldb/packages/Python/lldbsuite/test/api/multiple-debuggers/multi-process-driver.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/api/multiple-debuggers/multi-process-driver.cpp b/lldb/packages/Python/lldbsuite/test/api/multiple-debuggers/multi-process-driver.cpp
index 883e3b56153..15170a3e5eb 100644
--- a/lldb/packages/Python/lldbsuite/test/api/multiple-debuggers/multi-process-driver.cpp
+++ b/lldb/packages/Python/lldbsuite/test/api/multiple-debuggers/multi-process-driver.cpp
@@ -217,6 +217,10 @@ void *do_one_debugger (void *in)
int main (int argc, char **argv)
{
+#if !defined(_MSC_VER)
+ signal(SIGPIPE, SIG_IGN);
+#endif
+
SBDebugger::Initialize();
completed_threads_array = (bool *) malloc (sizeof (bool) * NUMBER_OF_SIMULTANEOUS_DEBUG_SESSIONS);
OpenPOWER on IntegriCloud