Remove call to StopMonitor() from ProcessMonitor::Detach()
- StopMonitor() is called anyways from ProcessMonitor destructor later
- resolves hang in TestEvents.py
Patch by Matt Kopec!
llvm-svn: 168503
diff --git a/lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp b/lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp
index 46ea84b..9899247 100644
--- a/lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp
+++ b/lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp
@@ -1219,7 +1219,7 @@
}
process->SendMessage(message);
- stop_monitoring = message.GetKind() == ProcessMessage::eExitMessage;
+ stop_monitoring = !process->IsAlive();
}
return stop_monitoring;
@@ -1657,7 +1657,6 @@
DetachOperation op(error);
DoOperation(&op);
}
- StopMonitor();
return error;
}
@@ -1705,6 +1704,7 @@
Host::ThreadCancel(m_operation_thread, NULL);
Host::ThreadJoin(m_operation_thread, &result, NULL);
+ m_operation_thread = LLDB_INVALID_HOST_THREAD;
}
void