================
@@ -574,10 +581,10 @@ int Editline::GetCharacter(EditLineGetCharType *c) {
// indefinitely. This gives a chance for someone to interrupt us. After
// Read returns, immediately lock the mutex again and check if we were
// interrupted.
- m_output_mutex.unlock();
+ m_output_stream_sp->GetMutex().unlock();
----------------
labath wrote:
What would you say if, instead of exposing rather non-RAII method on the
generic class, we worked around this issue (the issue being us wanting to put
libedit code in a critical section) locally, by having something like
`std::optional<LockedStream> m_locked_output` member on the editline class?
GetLine could set this member when doing its work, and here we would clear it
before blocking, and re-set it immediately afterwards.
https://github.com/llvm/llvm-project/pull/126630
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits