cosmopolitan/libc/runtime
Justine Tunney cd672e251f
Improve crash signal reporting on Windows
This change fixes a bug where exiting a crash signal handler on Windows
after adding the signal to uc_sigmask, but not correcting the CPU state
would cause the signal handler to loop infinitely, causing process hang

Another issue is that very tiny programs, that don't link posix signals
would not have their SIGILL / SIGSEGV / etc. status reported to Cosmo's
bash shell when terminating on crash. That's fixed by a tiny handler in
WinMain() that knows how to map WIN32 crash codes to the POSIX flavors.
2024-05-30 14:04:10 -07:00
..
.cosmo Move zipos into runtime package 2023-08-11 23:14:02 -07:00
__sigsetjmp_tail.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
at_quick_exit.c Upgrade to 2022-era LLVM LIBCXX 2024-05-27 02:12:27 -07:00
BUILD.mk more modeline errata (#1019) 2023-12-16 23:07:10 -05:00
clktck.h Reduce header complexity 2023-11-28 14:39:42 -08:00
clone-linux.S Fix more vi modelines (#1006) 2023-12-13 02:28:11 -05:00
clone-openbsd.S Fix more vi modelines (#1006) 2023-12-13 02:28:11 -05:00
clone-xnu.S Fix more vi modelines (#1006) 2023-12-13 02:28:11 -05:00
clone.c Upgrade to 2022-era LLVM LIBCXX 2024-05-27 02:12:27 -07:00
closesymboltable.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
cosmo.S Introduce support for trapping math 2024-04-30 13:38:43 -07:00
cosmo2.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
dsohandle.S Release Cosmopolitan v3.3 2024-02-20 13:27:59 -08:00
e820.internal.h Support malloc() on bare metal 2021-02-24 00:53:24 -08:00
efimain.greg.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
efipostboot.S Fix more vi modelines (#1006) 2023-12-13 02:28:11 -05:00
enable_tls.c Refactor some code 2024-05-24 11:44:44 -07:00
exit.c Call thread finalizers on exit() 2024-01-08 11:45:02 -08:00
fenv.h Introduce support for trapping math 2024-04-30 13:38:43 -07:00
findcombinary.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
fltrounds.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
fpathconf.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
fpreset.S Fix more vi modelines (#1006) 2023-12-13 02:28:11 -05:00
ftrace-hook.S Fix more vi modelines (#1006) 2023-12-13 02:28:11 -05:00
ftrace_install.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
ftrace_stackdigs.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
ftraceinit.greg.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
ftracer.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
getargmax.c Make improvements 2024-02-12 10:23:00 -08:00
getavphyspages.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
getdosargv.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
getdosenviron.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
getinterpreterexecutablename.c Add sysctlbyname() for MacOS 2024-05-02 23:21:43 -07:00
getlogin.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
getlogin_r.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
getmemtracksize.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
getpagesize.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
getphyspages.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
getresourcelimit.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
getsymbol.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
getsymbolbyaddr.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
getsymbolname.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
getsymboltable.c Improve crash backtrace reliability 2024-05-07 18:10:28 -07:00
getsysctl.c Add sysctlbyname() for MacOS 2024-05-02 23:21:43 -07:00
grow.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
hog.py Implement proper time zone support 2024-05-04 23:06:37 -07:00
hook.greg.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
inflate.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
init.S Fix more vi modelines (#1006) 2023-12-13 02:28:11 -05:00
interceptflag.greg.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
internal.h Prepend getcwd to exename early in init (#1048) 2024-01-01 07:23:23 -08:00
isheap.c Make old C++ demangler asynchronous signal safe 2024-05-07 03:41:33 -07:00
ismemtracked.greg.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
isstackoverflow.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
jit.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
login_tty.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
mapanon.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
mapshared.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
mapstack.c Make improvements 2024-01-29 16:31:58 -08:00
memtrack.internal.h Drop support for Windows 8 2024-05-29 19:37:47 -07:00
memtrack64.txt Iterate more on recent changes 2023-11-11 00:28:22 -08:00
memtracknt.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
metalprintf.greg.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
metalprintf.internal.h Reduce header complexity 2023-11-28 14:39:42 -08:00
mman.internal.h Reduce header complexity 2023-11-28 14:39:42 -08:00
mmap.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
morph.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
morph_tls.c Release Cosmopolitan v3.3 2024-02-20 13:27:59 -08:00
mprotect-nt.greg.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
mprotect.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
msync-nt.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
msync.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
munmap.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
openexecutable.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
opensymboltable.greg.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
pathconf.h Reduce header complexity 2023-11-28 14:39:42 -08:00
pc.internal.h flip et / noet in modelines 2023-12-07 22:17:11 -05:00
printgarbage.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
printmaps.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
progname.S flip et / noet in modelines 2023-12-07 22:17:11 -05:00
quick_exit.c Upgrade to 2022-era LLVM LIBCXX 2024-05-27 02:12:27 -07:00
runtime.h Drop support for Windows 8 2024-05-29 19:37:47 -07:00
set_tls.c Release Cosmopolitan v3.3 2024-02-20 13:27:59 -08:00
sigsetjmp.S Fix more vi modelines (#1006) 2023-12-13 02:28:11 -05:00
stack.h Walk back most uses of __STRICT_ANSI__ 2024-02-27 04:09:49 -08:00
straceinit.greg.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
symbols.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
symbols.internal.h Reduce header complexity 2023-11-28 14:39:42 -08:00
sysconf.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
sysconf.h Reduce header complexity 2023-11-28 14:39:42 -08:00
syslib.internal.h Add sysctlbyname() for MacOS 2024-05-02 23:21:43 -07:00
untrackmemoryintervals.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
utmp.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
utmp.h Reduce header complexity 2023-11-28 14:39:42 -08:00
utmpx.h Reduce header complexity 2023-11-28 14:39:42 -08:00
valist.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
warnifpowersave.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
weakfree.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
winargs.internal.h Make improvements 2024-02-12 10:23:00 -08:00
winmain.greg.c Improve crash signal reporting on Windows 2024-05-30 14:04:10 -07:00
zipos-access.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
zipos-close.c Rename __zipos_free -> __zipos_drop (#1043) 2023-12-26 12:08:57 -05:00
zipos-fcntl.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
zipos-find.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
zipos-fstat.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
zipos-get.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
zipos-inode.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
zipos-mmap.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
zipos-normpath.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
zipos-notat.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
zipos-open.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
zipos-parseuri.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
zipos-read.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
zipos-seek.c Skip the CAS on new_pos < 0 (#1080) 2024-01-12 21:08:28 -08:00
zipos-stat-impl.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
zipos-stat.c Apply clang-format update to repo (#1154) 2024-04-25 10:38:00 -07:00
zipos.internal.h Rename __zipos_free -> __zipos_drop (#1043) 2023-12-26 12:08:57 -05:00
zipos.S Rename __zipos_free -> __zipos_drop (#1043) 2023-12-26 12:08:57 -05:00