From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2155) id 54EE73858018; Tue, 14 Sep 2021 15:05:54 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 54EE73858018 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Corinna Vinschen To: cygwin-cvs@sourceware.org Subject: [newlib-cygwin] Cygwin: pipes: fix a bug in raw_write X-Act-Checkin: newlib-cygwin X-Git-Author: Corinna Vinschen X-Git-Refname: refs/heads/master X-Git-Oldrev: e9d4cb765fbf06485eda62e5b4ae83ad2710e226 X-Git-Newrev: 464f7145f650e85f89ac288355d4daba7e682156 Message-Id: <20210914150554.54EE73858018@sourceware.org> Date: Tue, 14 Sep 2021 15:05:54 +0000 (GMT) X-BeenThere: cygwin-cvs@cygwin.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Cygwin core component git logs List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Sep 2021 15:05:54 -0000 https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=464f7145f650e85f89ac288355d4daba7e682156 commit 464f7145f650e85f89ac288355d4daba7e682156 Author: Corinna Vinschen Date: Fri Sep 3 10:24:15 2021 +0200 Cygwin: pipes: fix a bug in raw_write The buffer pointer is incremented by "chunk", which is what we typically try to write, but this isn't what actually got written. Increment the buffer pointer by what we actually wrote, as returned by NtWriteFile. Signed-off-by: Corinna Vinschen Diff: --- winsup/cygwin/fhandler_pipe.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/winsup/cygwin/fhandler_pipe.cc b/winsup/cygwin/fhandler_pipe.cc index 2dec0a848..85ab3cf55 100644 --- a/winsup/cygwin/fhandler_pipe.cc +++ b/winsup/cygwin/fhandler_pipe.cc @@ -380,7 +380,7 @@ fhandler_pipe::raw_write (const void *ptr, size_t len) buffer doesn't have sufficient space. */ if (nbytes_now == 0) set_errno (EAGAIN); - ptr = ((char *) ptr) + chunk; + ptr = ((char *) ptr) + nbytes_now; nbytes += nbytes_now; } else if (STATUS_PIPE_IS_CLOSED (status))