newlib-cygwin/winsup/cygwin
Takashi Yano 76e1edeb27 Cygwin: console: Fix hangup of less on quit after the window is resized.
https://cygwin.com/pipermail/cygwin/2022-December/252737.html

If the less is started from non-cygwin shell and window size is
changed, it will hang-up when quitting. The cause of the proglem is
that less uses longjump() in signal handler. If the signal handler
is called while cygwin is acquiring the mutex, cygwin loses the
chance to release mutex. With this patch, the mutex is released
just before calling kill_pgrp() and re-acquired when kill_pgrp()
returns.

Reported-by: Gregory Mason <grmason@epic.com>
Signed-off-by: Takashi Yano <takashi.yano@nifty.ne.jp>
2022-12-22 20:50:40 +09:00
..
DevDocs Cygwin: testsuite: Add x86_64 code to "dynamically load cygwin" test 2022-08-29 17:53:48 +01:00
fhandler Cygwin: console: Fix hangup of less on quit after the window is resized. 2022-12-22 20:50:40 +09:00
include bump DLL version to 3.4.4 2022-12-16 13:30:55 +00:00
lib Cygwin: drop __stdcall usage 2022-08-04 20:54:09 +02:00
libc strptime.cc(__strptime): add %q GNU quarter 2022-10-24 14:09:07 +02:00
local_includes Cygwin: uinfo: Drop long disabled nss_prefix and nss_separator 2022-12-02 16:35:31 +01:00
math cacosh: Use approximation for large input. 2022-08-04 12:55:52 +02:00
mm Cygwin: cygheap: make bucket_val a static const array 2022-10-28 17:02:05 +02:00
regex
release Cygwin: console: Fix hangup of less on quit after the window is resized. 2022-12-22 20:50:40 +09:00
scripts Cygwin: drop snapshot handling 2022-11-24 12:20:50 +01:00
sec Cygwin: authz: Use dedicated locks per datastructure 2022-08-22 14:25:05 +02:00
tzcode winsup: delete old _LIBC logic 2021-11-10 20:16:15 -05:00
x86_64 Revert "Cygwin: x86_64: add wmemset assembler entry point" 2022-12-16 10:22:37 +00:00
Makefile.am Cygwin: Makefile: build new-cygwin1.dll in a single step 2022-12-13 15:25:06 +01:00
advapi32.cc Cygwin: drop all usages of WINAPI 2022-08-04 22:13:59 +02:00
aio.cc Cygwin: drop all usages of WINAPI 2022-08-04 22:13:59 +02:00
assert.cc
autoload.cc Cygwin: drop __stdcall usage 2022-08-04 20:54:09 +02:00
automode.c
binmode.c
clock.cc Cygwin: clock.cc: Drop redundant Windows prototypes 2022-08-04 22:13:59 +02:00
config.h.in
create_posix_thread.cc Cygwin: add memory_layout.h 2022-10-28 16:26:53 +02:00
crt0.c Cygwin: drop 32 bit considerations in crt0 code 2022-05-16 18:17:06 +02:00
ctype.cc Cygwin: drop macro and code for CYGWIN_VERSION_CHECK_FOR_OLD_CTYPE 2022-08-03 15:59:37 +02:00
cxx.cc
cygthread.cc Cygwin: drop all usages of WINAPI 2022-08-04 22:13:59 +02:00
cygtls.cc Cygwin: tls_pathbuf: Use Windows heap 2022-08-23 12:09:44 +02:00
cygwait.cc Ensure nanosleep(2) never returns negative rem 2021-07-22 09:57:40 +02:00
cygwin.din Cygwin: stop exporting _alloca 2022-08-08 18:16:09 +02:00
cygwin.ldif
cygwin.sc.in Cygwin: drop objcopy .gnu_debuglink juggle 2022-10-28 16:26:53 +02:00
cygxdr.cc
dcrt0.cc Cygwin: exec: don't access cygheap before it's initialized 2022-12-01 22:34:53 +01:00
debug.cc Cygwin: debugging: convert muto to SRWLOCK 2022-08-22 14:38:49 +02:00
devices.cc Cygwin: Implicitly support the /dev/fd symlink and friends 2022-02-22 13:33:00 +01:00
devices.in Cygwin: Implicitly support the /dev/fd symlink and friends 2022-02-22 13:33:00 +01:00
dir.cc change _COMPILING_NEWLIB to _LIBC 2021-11-15 19:32:23 -05:00
dlfcn.cc Cygwin: remove miscellaneous 32-bit code 2022-05-29 17:54:32 -04:00
dll_init.cc Cygwin: remove most occurrences of __stdcall and __cdecl 2022-06-06 12:00:45 -04:00
dtable.cc Cygwin: remove most occurrences of __stdcall and __cdecl 2022-06-06 12:00:45 -04:00
environ.cc Cygwin: drop macro and code for CYGWIN_VERSION_DLL_MALLOC_ENV 2022-08-03 15:35:34 +02:00
errno.cc Cygwin: create sparse errmap array 2022-08-04 15:16:48 +02:00
exceptions.cc Cygwin: Handle out of order modules for module offsets in stackdump 2022-11-04 13:25:54 +00:00
exec.cc Cygwin: rename __cygwin_environ and drop env redirection via cur_environ() 2022-07-28 22:00:40 +02:00
external.cc Cygwin: uinfo: Drop long disabled nss_prefix and nss_separator 2022-12-02 16:35:31 +01:00
fcntl.cc Cygwin: simplify some function names 2022-05-29 17:45:52 -04:00
fenv.c
flock.cc Cygwin: drop all usages of WINAPI 2022-08-04 22:13:59 +02:00
fork.cc Cygwin: fork: fix a potential hang in fork 2022-08-29 12:25:24 +02:00
forkable.cc
gcrt0.c Revert "sys/types.h: Don't include sys/_stdint.h" 2022-05-04 15:08:44 +02:00
glob.cc Cygwin: simplify some function names 2022-05-29 17:45:52 -04:00
glob_pattern_p.cc
globals.cc Cygwin: stop handling files with .com suffix like .exe files 2022-10-28 12:44:27 +02:00
gmon.c Cygwin: Zero out gmon header before use 2021-06-26 15:24:27 +01:00
grp.cc Cygwin: simplify some function names 2022-05-29 17:45:52 -04:00
hookapi.cc Cygwin: Fix previous attempt to drop i386 targets from hookapi 2022-07-28 16:38:01 +02:00
init.cc Cygwin: drop all usages of WINAPI 2022-08-04 22:13:59 +02:00
ioctl.cc
ipc.cc Cygwin: simplify some function names 2022-05-29 17:45:52 -04:00
kernel32.cc Cygwin: drop all usages of WINAPI 2022-08-04 22:13:59 +02:00
ldap.cc Cygwin: drop all usages of WINAPI 2022-08-04 22:13:59 +02:00
libstdcxx_wrapper.cc Cygwin: remove miscellaneous 32-bit code 2022-05-29 17:54:32 -04:00
loadavg.cc
lsearch.cc
mcount.c
miscfuncs.cc Cygwin: rename CygwinCreateThread to create_posix_thread 2022-08-10 18:06:28 +02:00
mktemp.cc Cygwin: simplify some function names 2022-05-29 17:45:52 -04:00
mount.cc Cygwin: mount_info::get_mounts_here: alloc temp mountpoint info on cygheap 2022-08-05 12:01:45 +02:00
msg.cc
net.cc Cygwin: net.cc: convert wsock_errmap into a simple array of error codes 2022-08-04 11:45:58 +02:00
netdb.cc
nfs.cc
nlsfuncs.cc Cygwin: cwd: use SRWLOCK instead of muto 2022-08-23 12:09:44 +02:00
ntea.cc Cygwin: remove most occurrences of __stdcall and __cdecl 2022-06-06 12:00:45 -04:00
passwd.cc Cygwin: simplify some function names 2022-05-29 17:45:52 -04:00
path.cc Cygwin: path_conv: make sure sym.path_flags is always initialized 2022-12-21 13:13:59 +01:00
pinfo.cc Cygwin: drop all usages of WINAPI 2022-08-04 22:13:59 +02:00
poll.cc Cygwin: poll: Fix a bug on inquiring same fd with different events. 2022-06-27 10:54:24 +09:00
posix_ipc.cc Cygwin: move POSIX semaphore API functions to posix_ipc.cc 2022-08-10 18:11:57 +02:00
posix_timer.cc Cygwin: posix_timer: fix formatting 2022-08-22 14:53:30 +02:00
profil.c Cygwin: drop all usages of WINAPI 2022-08-04 22:13:59 +02:00
pseudo-reloc.cc Cygwin: drop macro and code for CYGWIN_VERSION_USE_PSEUDO_RELOC_IN_DLL 2022-08-03 16:01:29 +02:00
quotactl.cc
random.cc
registry.cc
resource.cc Cygwin: remove most occurrences of __stdcall and __cdecl 2022-06-06 12:00:45 -04:00
scandir.cc
sched.cc Cygwin: drop support for systems not supporting processor groups 2021-10-29 18:19:45 +02:00
select.cc Cygwin: select: don't report read ready on a FIFO never opened for writing 2022-10-19 08:17:50 -04:00
sem.cc
setlsapwd.cc
shm.cc Cygwin: shm: Convert muto into SRWLOCK and avoid overlocking 2022-08-22 14:28:11 +02:00
signal.cc Cygwin: remove regparm.h 2022-05-29 17:45:52 -04:00
sigproc.cc Cygwin: sigproc.cc: drop Static macro, use explicit NO_COPY instead 2022-08-19 21:55:09 +02:00
smallprint.cc Cygwin: smallprint.cc: Drop HEAP_ZERO_MEMORY 2022-08-22 17:58:53 +02:00
spawn.cc Cygwin: pty, console: Encapsulate spawn.cc code related to pty/console. 2022-11-20 10:37:37 +09:00
strace.cc Cygwin: remove most occurrences of __stdcall and __cdecl 2022-06-06 12:00:45 -04:00
strfuncs.cc Cygwin: drop all usages of NTAPI 2022-08-04 22:13:59 +02:00
strsep.cc Cygwin: C++17: register keyword is deprecated 2021-08-26 22:14:11 +02:00
strsig.cc Cygwin: remove miscellaneous 32-bit code 2022-05-29 17:54:32 -04:00
sync.cc
syscalls.cc Cygwin: stop handling files with .com suffix like .exe files 2022-10-28 12:44:27 +02:00
sysconf.cc Cygwin: remove miscellaneous 32-bit code 2022-05-29 17:54:32 -04:00
syslog.cc
termios.cc Cygwin: drop macro and code for CYGWIN_VERSION_DLL_IS_OLD_TERMIOS 2022-08-03 15:35:29 +02:00
textmode.c
textreadmode.c
thread.cc Cygwin: move POSIX semaphore API functions to posix_ipc.cc 2022-08-10 18:11:57 +02:00
timerfd.cc Cygwin: drop all usages of WINAPI 2022-08-04 22:13:59 +02:00
times.cc Cygwin: remove most occurrences of __stdcall and __cdecl 2022-06-06 12:00:45 -04:00
tls_pbuf.cc Cygwin: tls_pathbuf: Use Windows heap 2022-08-23 12:09:44 +02:00
tty.cc Cygwin: remove most occurrences of __stdcall and __cdecl 2022-06-06 12:00:45 -04:00
uinfo.cc Cygwin: uinfo: don't special case current user 2022-12-02 16:49:47 +01:00
uname.cc Cygwin: uname: fix building in non-git source dir 2022-12-11 11:25:04 +01:00
wait.cc
wincap.cc Cygwin: memory_layout.h: define absolute MMAP_STORAGE_HIGH values here 2022-10-28 16:26:53 +02:00
window.cc Cygwin: drop all usages of WINAPI 2022-08-04 22:13:59 +02:00
winf.cc
winver.rc