================
@@ -96,7 +115,7 @@ Expected<std::optional<Message>> Transport::Read() {
return createStringError(
formatv("invalid content length {0}", *raw_length).str());
- Expected<std::string> raw_json = ReadFull(*input, length);
----------------
labath wrote:
> Closing a file descriptor does not interrupt in progress reads, I think its
> platform dependent on what happens.
Very much so. It's also basically impossible to do this in race-free manner,.
> Also, frustrating on Windows stdin is an anonymous pipe and anonymous pipes
> do not support
I don't know if this helps you (since you still have to use a dedicated API
instead of `select(2)`), but `lldb_private::Pipe` works around this by creating
a named pipe with an random name (from what I've read, that's actually how
windows implements anonymous pipes internally).
https://github.com/llvm/llvm-project/pull/130169
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits