diff options
-rw-r--r-- | lldb/include/lldb/Core/Debugger.h | 6 | ||||
-rw-r--r-- | lldb/source/Core/Debugger.cpp | 10 |
2 files changed, 8 insertions, 8 deletions
diff --git a/lldb/include/lldb/Core/Debugger.h b/lldb/include/lldb/Core/Debugger.h index f1b94326353..cee871424b7 100644 --- a/lldb/include/lldb/Core/Debugger.h +++ b/lldb/include/lldb/Core/Debugger.h @@ -506,12 +506,6 @@ protected: bool CheckIfTopInputReaderIsDone (); - void - DisconnectInput() - { - m_input_comm.Clear (); - } - SourceManager::SourceFileCache & GetSourceFileCache () { diff --git a/lldb/source/Core/Debugger.cpp b/lldb/source/Core/Debugger.cpp index 250486a3aed..628d7600448 100644 --- a/lldb/source/Core/Debugger.cpp +++ b/lldb/source/Core/Debugger.cpp @@ -387,8 +387,14 @@ Debugger::Clear() } } BroadcasterManager::Clear (); - DisconnectInput(); - + + // Close the input file _before_ we close the input read communications class + // as it does NOT own the input file, our m_input_file does. + GetInputFile().Close (); + // Now that we have closed m_input_file, we can now tell our input communication + // class to close down. Its read thread should quickly exit after we close + // the input file handle above. + m_input_comm.Clear (); } bool |