This commit is contained in:
2025-08-13 22:17:04 +03:00
parent 781b430c33
commit 3bcb778628

View File

@@ -210,18 +210,15 @@ PRIVATE_DEFINITION_START(PIProcess)
size_t offset = 0; size_t offset = 0;
while (1) { while (1) {
# ifdef WINDOWS # ifdef WINDOWS
DWORD available = 0; PeekNamedPipe(pipes[pipe_type][PipeRead], nullptr, 0, nullptr, &bytes_read, nullptr);
PeekNamedPipe(pipes[pipe_type][PipeRead], nullptr, 0, nullptr, &available, nullptr); if (bytes_read > 0) {
if (available == 0) { BOOL ok = ReadFile(pipes[pipe_type][PipeRead],
read_buffer.resize(offset); read_buffer.data(offset),
break; piMini(available, read_buffer.size() - offset),
&bytes_read,
nullptr);
if (!ok) bytes_read = 0;
} }
BOOL ok = ReadFile(pipes[pipe_type][PipeRead],
read_buffer.data(offset),
piMini(available, read_buffer.size() - offset),
&bytes_read,
nullptr);
if (!ok) bytes_read = 0;
# else # else
bytes_read = ::read(pipes[pipe_type][PipeRead], read_buffer.data(offset), read_buffer.size() - offset); bytes_read = ::read(pipes[pipe_type][PipeRead], read_buffer.data(offset), read_buffer.size() - offset);
# endif # endif