From 781b430c3336c1cbf8203ab5bf6f631c0420e417 Mon Sep 17 00:00:00 2001 From: "andrey.bychkov" Date: Wed, 13 Aug 2025 22:15:12 +0300 Subject: [PATCH] revert --- libs/main/system/piprocess.cpp | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/libs/main/system/piprocess.cpp b/libs/main/system/piprocess.cpp index c551b48c..a21b6930 100644 --- a/libs/main/system/piprocess.cpp +++ b/libs/main/system/piprocess.cpp @@ -212,14 +212,16 @@ PRIVATE_DEFINITION_START(PIProcess) # ifdef WINDOWS DWORD available = 0; PeekNamedPipe(pipes[pipe_type][PipeRead], nullptr, 0, nullptr, &available, nullptr); - if (available > 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; + if (available == 0) { + read_buffer.resize(offset); + break; } + 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 bytes_read = ::read(pipes[pipe_type][PipeRead], read_buffer.data(offset), read_buffer.size() - offset); # endif