ca77b848e7
* exception.h (cygwin_exception): New class. (cygwin_exception::dumpstack): Declare new function. (cygwin_exception::context): Ditto. (cygwin_exception::dump_exception): Ditto. * exceptions.cc (cygwin_exception::dump_exception): Move into cygwin_exception class. Accommodate new variable names. (cygwin_exception::dumpstack): Ditto stackdump -> dumpstack. (exception::handle): Move andreas processing earlier. Defer signal processing decisions to the signal thread where they belong. Pass exception information to sig_send via new siginfo_t si_cyg field. (ctrl_c_handler): Wait for SIGHUP signal to be processed since it could cause a process exit and we don't want races with thread exit lock. (signal_exit): Move back here from sigproc.cc. Modify arguments and remove from sigpacket class. Decide when to dump core based on signal type. (sigpacket::process): Handle exiting signals in context of threads rather than in the signal thread. Signal debugger on non-Windows signals. Remove setup_signal_exit call. * sigproc.cc (no_signals_available): Remove argument. (signal_exit_code): Delete. (close_my_readsig): Ditto. (_cygtls::signal_exit): Move to exceptions.cc. (sigproc_terminate): Don't attempt to terminate signal thread. (setup_signal_exit): Delete. (exit_thread): Use new si_cyg entry in siginfo_t. (sig_send): Just use empty initializer for si. Accommodate change in no_signals_available argument. (wait_sig): Remove attempt to "go asynchronous" on process exit. Delete __SIGEXIT handling. Don't ever exit. * sigproc.h: Remove __SIGEXIT from signal enum. Renumber. * include/cygwin/signal.h (siginfo_t): Add si_cyg entry. |
||
---|---|---|
.. | ||
arpa | ||
asm | ||
attr | ||
bits | ||
cygwin | ||
machine | ||
net | ||
netinet | ||
sys | ||
a.out.h | ||
byteswap.h | ||
dlfcn.h | ||
elf.h | ||
endian.h | ||
err.h | ||
error.h | ||
exceptions.h | ||
fcntl.h | ||
features.h | ||
fenv.h | ||
fnmatch.h | ||
fts.h | ||
ftw.h | ||
getopt.h | ||
glob.h | ||
icmp.h | ||
ifaddrs.h | ||
inttypes.h | ||
io.h | ||
lastlog.h | ||
libgen.h | ||
limits.h | ||
mapi.h | ||
memory.h | ||
mntent.h | ||
monetary.h | ||
mqueue.h | ||
netdb.h | ||
paths.h | ||
poll.h | ||
process.h | ||
pthread.h | ||
pty.h | ||
regex.h | ||
resolv.h | ||
search.h | ||
semaphore.h | ||
stdint.h | ||
sysexits.h | ||
syslog.h | ||
termio.h | ||
tzfile.h | ||
utmpx.h | ||
wait.h |