newlib-cygwin/winsup/cygwin/release
Takashi Yano c4fb5da278 Cygwin: pty: Avoid client deadlock when pty master stops to read.
Previsouly, the following commands hangs:
  mintty -e timeout 1 dash -c 'yes aaaaaaaaaaaaaaaaaaaaaaaaa | cat'

The mechanism is as follows.

When the child process (timeout) is terminated, mintty seems to stop
reading pty master even if yes or cat still alive.

If the the pipe used to transfer output from pty slave to pty master
is full due to lack of master reader, WriteFile() to the pipe is
blocked. WriteFile() cannot be canceled by cygwin signal, therefore,
pty slave hangs.

This patch avoids hanging by checking pipe space before calling
WriteFile() and prevents writing data more than space.

Addresses: https://cygwin.com/pipermail/cygwin/2024-June/256178.html
Reported-by: jojelino <jojelino@gmail.com>
Signed-off-by: Takashi Yano <takashi.yano@nifty.ne.jp>
2024-07-01 17:45:00 +09:00
..
1.7.10
1.7.11
1.7.12
1.7.13
1.7.14
1.7.15
1.7.16
1.7.17
1.7.18
1.7.19
1.7.20
1.7.21
1.7.22
1.7.23
1.7.24
1.7.25
1.7.26
1.7.27
1.7.28
1.7.29
1.7.30
1.7.31
1.7.32
1.7.33
1.7.34
1.7.35
2.0.0
2.0.1
2.0.3
2.0.4
2.1.0
2.2.0
2.2.1
2.3.0
2.3.1
2.4.0
2.4.1
2.5.0
2.5.1
2.5.2
2.6.0
2.6.1
2.7.0
2.8.0
2.8.1
2.8.2
2.9.0
2.10.0
2.11.0
2.11.1
2.11.2
3.0
3.0.1
3.0.2
3.0.3
3.0.4
3.0.5
3.0.6
3.0.7
3.1.0
3.1.1
3.1.2
3.1.3
3.1.4
3.1.5 Cygwin: stat: fix st_mode of fifos again 2020-05-28 13:34:19 -04:00
3.1.6 Cygwin: add microcode patch to release messages 2020-07-09 09:55:34 +02:00
3.1.7 Cygwin: main exception handler (64-bit): continue GCC exceptions 2020-08-18 07:04:25 -04:00
3.2.0 Cygwin: add "app execution aliases" treatment to release notes 2021-03-23 16:54:41 +01:00
3.3.0 Cygwin: convert malloc lock to SRWLOCK 2021-10-26 18:47:22 +02:00
3.3.2 Cygwin: pipe: Avoid false EOF while reading output of C# programs. 2021-11-08 11:06:58 +01:00
3.3.3 Cygwin: Fix release note 3.3.3. 2021-11-23 01:19:56 +09:00
3.3.4 Cygwin: select: don't report read ready on a FIFO never opened for writing 2022-10-19 08:17:50 -04:00
3.3.5 Cygwin: Fix "0x0x" in gmondump and ssp man pages 2022-04-27 11:40:09 +02:00
3.3.6 newlocale: fix crash when trying to write to __C_locale 2022-08-12 12:29:26 +02:00
3.4.0 Cygwin: add release message for commit previous commit 8d138c3f66 2022-12-03 16:36:49 +01:00
3.4.1 Cygwin: pipe: Fix performance degradation for non-cygwin pipe. 2022-12-09 21:01:29 +09:00
3.4.2 Cygwin: add 3.4.2 release notes 2022-12-11 11:45:36 +01:00
3.4.3 Cygwin: Update 3.4.3 release note 2022-12-16 13:36:22 +00:00
3.4.4 Cygwin: open_shared: try harder allocating a shared region 2023-01-17 18:41:10 +01:00
3.4.5 Cygwin: Add 3.4.5 release message 2023-01-19 18:33:40 +01:00
3.4.6 Cygwin: chmod: don't drop default ACEs from directory ACLs 2023-02-09 21:58:20 +01:00
3.4.7 Cygwin: Fix latest release message being in the wrong release file. 2023-07-04 16:50:37 +02:00
3.4.8 Cygwin: shared: Fix access permissions setting in open_shared(). 2023-08-16 22:11:17 +09:00
3.4.9 Cygwin: document latest sys/cpuset.h fix 2023-09-01 12:42:10 +02:00
3.4.10 Cygwin: open(2): reset sparseness on O_TRUNCated files 2023-11-28 10:55:33 +01:00
3.5.0 Cygwin: fix arc4random after fork(2) 2024-01-29 13:43:36 +01:00
3.5.1 Cygwin: add release text for getgrent local SAM enumeration patch 2024-02-26 15:56:10 +01:00
3.5.2 Revert "Cygwin: glob: perform ignore_case_with_glob on input" 2024-03-18 11:10:13 +01:00
3.5.3 Cygwin: add a fake 3.5.3 release file 2024-04-03 19:47:58 +02:00
3.5.4 Cygwin: pty: Avoid client deadlock when pty master stops to read. 2024-07-01 17:45:00 +09:00
3.6.0 Cygwin: add //tsclient and //wsl$ support to relnotes 2024-03-24 20:06:13 +01:00