diff options
author | Greg Clayton <gclayton@apple.com> | 2010-08-21 02:22:51 +0000 |
---|---|---|
committer | Greg Clayton <gclayton@apple.com> | 2010-08-21 02:22:51 +0000 |
commit | 0b76a2c21f18e78c47f2eef92256debc3a035e54 (patch) | |
tree | 0e1b907bd3d0106c726c510bd75e759a7a8789b0 /lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h | |
parent | a94e3d1124666470d6bdde8d66ab88fe5264afc5 (diff) | |
download | bcm5719-llvm-0b76a2c21f18e78c47f2eef92256debc3a035e54.tar.gz bcm5719-llvm-0b76a2c21f18e78c47f2eef92256debc3a035e54.zip |
Modified the host process monitor callback function Host::StartMonitoringChildProcess
to spawn a thread for each process that is being monitored. Previously
LLDB would spawn a single thread that would wait for any child process which
isn't ok to do as a shared library (LLDB.framework on Mac OSX, or lldb.so on
linux). The old single thread used to call wait4() with a pid of -1 which
could cause it to reap child processes that it shouldn't have.
Re-wrote the way Function blocks are handles. Previously I attempted to keep
all blocks in a single memory allocation (in a std::vector). This made the
code somewhat efficient, but hard to work with. I got rid of the old BlockList
class, and went to a straight parent with children relationship. This new
approach will allow for partial parsing of the blocks within a function.
llvm-svn: 111706
Diffstat (limited to 'lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h')
-rw-r--r-- | lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h index d1fb7bf9155..88c495a652a 100644 --- a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h +++ b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h @@ -324,7 +324,7 @@ protected: lldb::ByteOrder m_byte_order; GDBRemoteCommunication m_gdb_comm; lldb::pid_t m_debugserver_pid; - uint32_t m_debugserver_monitor; + lldb::thread_t m_debugserver_thread; StringExtractor m_last_stop_packet; GDBRemoteDynamicRegisterInfo m_register_info; lldb_private::Broadcaster m_async_broadcaster; |