diff options
Diffstat (limited to 'lldb/source/Plugins')
-rw-r--r-- | lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp | 47 | ||||
-rw-r--r-- | lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h | 10 |
2 files changed, 21 insertions, 36 deletions
diff --git a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp index 93c67302981..52499ba173a 100644 --- a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp +++ b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp @@ -104,9 +104,7 @@ ProcessGDBRemote::ProcessGDBRemote(Target& target, Listener &listener) : Process (target, listener), m_dynamic_loader_ap (), m_flags (0), - m_stdio_communication ("gdb-remote.stdio"), m_stdio_mutex (Mutex::eMutexTypeRecursive), - m_stdout_data (), m_byte_order (eByteOrderHost), m_gdb_comm(), m_debugserver_pid (LLDB_INVALID_PROCESS_ID), @@ -1634,23 +1632,23 @@ ProcessGDBRemote::DoSignal (int signo) return error; } -void -ProcessGDBRemote::STDIOReadThreadBytesReceived (void *baton, const void *src, size_t src_len) -{ - ProcessGDBRemote *process = (ProcessGDBRemote *)baton; - process->AppendSTDOUT(static_cast<const char *>(src), src_len); -} - -void -ProcessGDBRemote::AppendSTDOUT (const char* s, size_t len) -{ - ProcessGDBRemoteLog::LogIf (GDBR_LOG_PROCESS, "ProcessGDBRemote::%s (<%d> %s) ...", __FUNCTION__, len, s); - Mutex::Locker locker(m_stdio_mutex); - m_stdout_data.append(s, len); +//void +//ProcessGDBRemote::STDIOReadThreadBytesReceived (void *baton, const void *src, size_t src_len) +//{ +// ProcessGDBRemote *process = (ProcessGDBRemote *)baton; +// process->AppendSTDOUT(static_cast<const char *>(src), src_len); +//} - // FIXME: Make a real data object for this and put it out. - BroadcastEventIfUnique (eBroadcastBitSTDOUT); -} +//void +//ProcessGDBRemote::AppendSTDOUT (const char* s, size_t len) +//{ +// ProcessGDBRemoteLog::LogIf (GDBR_LOG_PROCESS, "ProcessGDBRemote::%s (<%d> %s) ...", __FUNCTION__, len, s); +// Mutex::Locker locker(m_stdio_mutex); +// m_stdout_data.append(s, len); +// +// // FIXME: Make a real data object for this and put it out. +// BroadcastEventIfUnique (eBroadcastBitSTDOUT); +//} Error @@ -1867,18 +1865,7 @@ ProcessGDBRemote::StartDebugserverProcess if (m_debugserver_pid != LLDB_INVALID_PROCESS_ID) { if (pty.GetMasterFileDescriptor() != lldb_utility::PseudoTerminal::invalid_fd) - { - std::auto_ptr<ConnectionFileDescriptor> conn_ap(new ConnectionFileDescriptor (pty.ReleaseMasterFileDescriptor(), true)); - if (conn_ap.get()) - { - m_stdio_communication.SetConnection(conn_ap.release()); - if (m_stdio_communication.IsConnected()) - { - m_stdio_communication.SetReadThreadBytesReceivedCallback (STDIOReadThreadBytesReceived, this); - m_stdio_communication.StartReadThread(); - } - } - } + SetUpProcessInputReader (pty.ReleaseMasterFileDescriptor()); } } else diff --git a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h index 6330c7b0fb2..ae79c5a48bc 100644 --- a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h +++ b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h @@ -261,11 +261,11 @@ protected: bool ProcessIDIsValid ( ) const; - static void - STDIOReadThreadBytesReceived (void *baton, const void *src, size_t src_len); +// static void +// STDIOReadThreadBytesReceived (void *baton, const void *src, size_t src_len); - void - AppendSTDOUT (const char* s, size_t len); +// void +// AppendSTDOUT (const char* s, size_t len); void Clear ( ); @@ -321,9 +321,7 @@ protected: std::auto_ptr<lldb_private::DynamicLoader> m_dynamic_loader_ap; lldb_private::Flags m_flags; // Process specific flags (see eFlags enums) - lldb_private::Communication m_stdio_communication; lldb_private::Mutex m_stdio_mutex; // Multithreaded protection for stdio - std::string m_stdout_data; lldb::ByteOrder m_byte_order; GDBRemoteCommunication m_gdb_comm; lldb::pid_t m_debugserver_pid; |