Hi Johannes,

On Wed, 25 Jun 2025 09:38:17 +0200 (CEST)
Johannes Schindelin wrote:
> Hi Takashi,
> 
> On Wed, 25 Jun 2025, Johannes Schindelin wrote:
> 
> > On Wed, 25 Jun 2025, Takashi Yano wrote:
> > 
> > > I'd revise the patch as follows. Could you please test if the
> > > following patch also solves the issue?
> > 
> > Will do.
> 
> For the record, in my tests, this fixed the hangs, too.

Thanks for testing.
However, I noticed that this patch changes the behavior Corinna was
concerned about.

After trying various things, I found yet another solution for the issue.

diff --git a/winsup/cygwin/fhandler/pipe.cc b/winsup/cygwin/fhandler/pipe.cc
index e35d523bb..e36aa57fc 100644
--- a/winsup/cygwin/fhandler/pipe.cc
+++ b/winsup/cygwin/fhandler/pipe.cc
@@ -647,7 +647,7 @@ fhandler_pipe_fifo::raw_write (const void *ptr, size_t len)
            }
          if (!NT_SUCCESS (status))
            break;
-         if (io.Information > 0 || len <= PIPE_BUF || short_write_once)
+         if (io.Information > 0 || len <= PIPE_BUF)
            break;
          /* Independent of being blocking or non-blocking, if we're here,
             the pipe has less space than requested.  If the pipe is a

Corinna, what do you think?

Johannes, could you please test this patch as well?

> The only two issues I found aren't new in your revision, but I'd really
> like to address them, too:
> 
> - When running that `git clone` in a PowerShell inside a Windows Terminal,
>   Ctrl+C does not work, the SSH process simply continues.

This seems because ssh does not receive SIGINT. If you issue
kill -2 <pid>
ssh stops. Who should propagate SIGINT to cygwin ssh executed
by non-cygwin app (Git for Windows) in this case?

> - Also, terminating the SSH process from a separate terminal window via
>   `Stop-Process` (not `kill`, as I had mistakenly reported earlier)
>   somehow corrupts the PowerShell session such that even a single
>   keystroke in it will bring down the entire Windows Terminal window after
>   a few seconds.
> 
> Ciao,
> Johannes

-- 
Takashi Yano <[email protected]>

Reply via email to