================ Comment at: test/tools/lldb-mi/TestMiExit.py:33-34 @@ -32,4 +31,2 @@ self.expect("\^exit") - import pexpect - self.expect(pexpect.EOF) ---------------- It checks that lldb-mi really exited. If it doesn't work on Linux we can skip test or it should be commented out and we should mark it as "FIXME" for future fixes. I think "skip test" is preferable.
================ Comment at: tools/lldb-mi/MICmnStreamStdinLinux.cpp:162-164 @@ +161,5 @@ + // The reason for delay was behavior of select in multithreaded app. + // The man pages for select suggest that closing a fd which is monitored + // by select from another thread has no effect. It effectively caused the + // application to block in select forever and test cases timed out. + // To fix this issue, I have introduced the a timeout using 3rd arg of select. It ---------------- Have you tried to monitor errors using 3rd arg of select? ================ Comment at: tools/lldb-mi/MICmnStreamStdinLinux.cpp:165 @@ +164,3 @@ + // application to block in select forever and test cases timed out. + // To fix this issue, I have introduced the a timeout using 3rd arg of select. It + // gives us chance to see if other thread has asked us to stop waiting for ---------------- timeout is 4th argument ================ Comment at: tools/lldb-mi/MIDriver.cpp:524 @@ -524,1 +523,3 @@ + // input and needs an extra return before exiting. + if ((vStdInBuffer == "quit") || (vStdInBuffer.find("-gdb-exit") != std::string::npos)) vrwbYesExit = true; ---------------- I do not like this "if", but you have extended its functionality. Maybe it would be better to call CMICmnStreamStdinLinux::InterruptReadLine() from -gdb-exit command? or use CMIDriver::GetExitApplicationFlag() instead of m_waitForInput in CMICmnStreamStdinLinux::InputAvailable()? http://reviews.llvm.org/D7529 EMAIL PREFERENCES http://reviews.llvm.org/settings/panel/emailpreferences/ _______________________________________________ lldb-commits mailing list lldb-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits