newlib-cygwin/winsup/cygwin
Takashi Yano f6e4e98d30 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:38:08 +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:38:08 +09:00
include Cygwin: define FILE as struct __sFILE64, not as __sFILE 2022-12-08 17:16:20 +01: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: add local machine/asm.h header 2022-12-20 10:13:59 +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:38:08 +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 Cygwin: x86_64: import swab.S from NetBSD 2022-12-20 10:19:23 +01:00
Makefile.am Cygwin: Makefile: Drop all the "test dll" considerations 2022-12-21 17:43:11 +00: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: don't autoload some kernel32 functions 2022-12-04 14:03:07 +01:00
automode.c
binmode.c
clock.cc Cygwin: drop wincap::has_precise_system_time 2022-12-04 14:01:41 +01: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
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: flock: drop checking for artificial console handles 2022-12-04 14:01:41 +01: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
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: fix a few comments mentioning Windows 7 or 8 2022-12-04 14:01:41 +01: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:24 +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 Cygwin: add missing pragma 2022-12-07 21:18:24 +01:00
registry.cc
resource.cc Cygwin: fix a few comments mentioning Windows 7 or 8 2022-12-04 14:01:41 +01: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: drop wincap::needs_query_information 2022-12-04 14:01:41 +01: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
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: drop wincap::has_precise_system_time 2022-12-04 14:01:41 +01:00
tls_pbuf.cc Cygwin: tls_pathbuf: Use Windows heap 2022-08-23 12:09:44 +02:00
tty.cc Cygwin: pty: Use GetTickCount64() instead of GetTickCount(). 2022-12-09 21:01:42 +09:00
uinfo.cc Cygwin: drop special handling for SID authority 18 2022-12-04 14:03:02 +01:00
uname.cc Cygwin: uname: fix building in non-git source dir 2022-12-07 22:22:38 +01:00
wait.cc
wincap.cc Cygwin: drop wincaps for Windows 7 and Windows 8 2022-12-04 14:01:41 +01:00
window.cc Cygwin: drop all usages of WINAPI 2022-08-04 22:13:59 +02:00
winf.cc
winver.rc