summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatt Kopec <Matt.Kopec@intel.com>2013-03-14 14:22:40 +0000
committerMatt Kopec <Matt.Kopec@intel.com>2013-03-14 14:22:40 +0000
commit85cc3b3dbfb324e17480f944da8b33d634a1f35a (patch)
treedc76edd4c8eb5da147db774ac75c49af0bbe906b
parentf38a0ace2dddb636026d433ffcbff83b67ae8dc8 (diff)
downloadbcm5719-llvm-85cc3b3dbfb324e17480f944da8b33d634a1f35a.tar.gz
bcm5719-llvm-85cc3b3dbfb324e17480f944da8b33d634a1f35a.zip
Backout POSIX realtime lldb output. TestEvents.py is causing lldb to assert.
llvm-svn: 177076
-rw-r--r--lldb/source/Plugins/Process/POSIX/ProcessPOSIX.cpp24
-rw-r--r--lldb/source/Plugins/Process/POSIX/ProcessPOSIX.h6
2 files changed, 28 insertions, 2 deletions
diff --git a/lldb/source/Plugins/Process/POSIX/ProcessPOSIX.cpp b/lldb/source/Plugins/Process/POSIX/ProcessPOSIX.cpp
index 6f725f5c7e6..417b941a50b 100644
--- a/lldb/source/Plugins/Process/POSIX/ProcessPOSIX.cpp
+++ b/lldb/source/Plugins/Process/POSIX/ProcessPOSIX.cpp
@@ -206,8 +206,6 @@ ProcessPOSIX::DoLaunch (Module *module,
if (!error.Success())
return error;
- SetSTDIOFileDescriptor(m_monitor->GetTerminalFD());
-
SetID(m_monitor->GetPID());
return error;
}
@@ -279,6 +277,7 @@ ProcessPOSIX::DoHalt(bool &caused_stop)
{
caused_stop = true;
}
+
return error;
}
@@ -585,6 +584,27 @@ ProcessPOSIX::PutSTDIN(const char *buf, size_t len, Error &error)
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 &
ProcessPOSIX::GetUnixSignals()
{
diff --git a/lldb/source/Plugins/Process/POSIX/ProcessPOSIX.h b/lldb/source/Plugins/Process/POSIX/ProcessPOSIX.h
index b16da3aca74..068686df99f 100644
--- a/lldb/source/Plugins/Process/POSIX/ProcessPOSIX.h
+++ b/lldb/source/Plugins/Process/POSIX/ProcessPOSIX.h
@@ -124,6 +124,12 @@ public:
virtual size_t
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.
OpenPOWER on IntegriCloud