diff options
author | Michał Górny <mgorny@moritz.systems> | 2022-06-27 14:22:38 +0200 |
---|---|---|
committer | Michał Górny <mgorny@moritz.systems> | 2022-06-28 21:49:17 +0200 |
commit | 261d0033500eaa281b74c9d54ae240257a0ea00c (patch) | |
tree | ac0fd7790cddaf0c3cfe47e20a3214df42b21339 /lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp | |
parent | b415f8e3dfb839a886b5290bbebbdd42344c07a9 (diff) | |
download | llvm-261d0033500eaa281b74c9d54ae240257a0ea00c.zip llvm-261d0033500eaa281b74c9d54ae240257a0ea00c.tar.gz llvm-261d0033500eaa281b74c9d54ae240257a0ea00c.tar.bz2 |
[lldb] [llgs] Fix premature server exit if multiprocess+nonstop
Fix lldb-server in the non-stop + multiprocess mode to exit on vStopped
only if all processes have exited, rather than when the first one exits.
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.llvm.org/D128639
Diffstat (limited to 'lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp')
-rw-r--r-- | lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp index 49125f9..63174ef 100644 --- a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp +++ b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp @@ -3860,9 +3860,9 @@ GDBRemoteCommunicationServerLLGS::Handle_vStopped( m_stop_notification_queue.pop_front(); if (!m_stop_notification_queue.empty()) return SendPacketNoLock(m_stop_notification_queue.front()); - // If this was the last notification and the process exited, terminate - // the server. - if (m_inferior_prev_state == eStateExited) { + // If this was the last notification and all the processes exited, + // terminate the server. + if (m_debugged_processes.empty()) { m_exit_now = true; m_mainloop.RequestTermination(); } |