Backout POSIX realtime lldb output. TestEvents.py is causing lldb to assert.

llvm-svn: 177076
This commit is contained in:
Matt Kopec 2013-03-14 14:22:40 +00:00
parent f38a0ace2d
commit 85cc3b3dbf
2 changed files with 28 additions and 2 deletions

View File

@ -206,8 +206,6 @@ ProcessPOSIX::DoLaunch (Module *module,
if (!error.Success()) if (!error.Success())
return error; return error;
SetSTDIOFileDescriptor(m_monitor->GetTerminalFD());
SetID(m_monitor->GetPID()); SetID(m_monitor->GetPID());
return error; return error;
} }
@ -279,6 +277,7 @@ ProcessPOSIX::DoHalt(bool &caused_stop)
{ {
caused_stop = true; caused_stop = true;
} }
return error; return error;
} }
@ -585,6 +584,27 @@ ProcessPOSIX::PutSTDIN(const char *buf, size_t len, Error &error)
return status; return status;
} }
size_t
ProcessPOSIX::GetSTDOUT(char *buf, size_t len, Error &error)
{
ssize_t bytes_read;
// The terminal file descriptor is always in non-block mode.
if ((bytes_read = read(m_monitor->GetTerminalFD(), buf, len)) < 0)
{
if (errno != EAGAIN)
error.SetErrorToErrno();
return 0;
}
return bytes_read;
}
size_t
ProcessPOSIX::GetSTDERR(char *buf, size_t len, Error &error)
{
return GetSTDOUT(buf, len, error);
}
UnixSignals & UnixSignals &
ProcessPOSIX::GetUnixSignals() ProcessPOSIX::GetUnixSignals()
{ {

View File

@ -124,6 +124,12 @@ public:
virtual size_t virtual size_t
PutSTDIN(const char *buf, size_t len, lldb_private::Error &error); PutSTDIN(const char *buf, size_t len, lldb_private::Error &error);
virtual size_t
GetSTDOUT(char *buf, size_t len, lldb_private::Error &error);
virtual size_t
GetSTDERR(char *buf, size_t len, lldb_private::Error &error);
//-------------------------------------------------------------------------- //--------------------------------------------------------------------------
// ProcessPOSIX internal API. // ProcessPOSIX internal API.