* exceptions.cc (sigsave): Copy on fork so that we can restore correct behavior

in forked process.
(interruptible): Flag as interruptible when running in main process module.
(interrupt_setup): Save return address and address of return address.
(signal_fixup_after_fork): New function.  Uses above two values to restore
proper behavior to forked process.
(interrupt_on_return): Pass return address address to interupt_setup.
(interrupt_now): Pass NULL for return address address to interrupt_setup.
* fork.cc (fork): Call signal_fixup_after_fork.
* shared.h: Lint cleanups.
* winsup.h: Ditto.
This commit is contained in:
Christopher Faylor
2000-04-08 04:13:12 +00:00
parent 65c0e6e68c
commit 0cda2f4609
6 changed files with 64 additions and 38 deletions

View File

@@ -14,7 +14,6 @@ details. */
extern "C" void __api_fatal (const char *, ...) __attribute__ ((noreturn));
extern "C" int __small_sprintf (char *dst, const char *fmt, ...);
extern "C" int __small_vsprintf (char *dst, const char *fmt, va_list ap);
extern "C" int __small_sprintf (char *dst, const char *fmt, ...);
/******** Deletion Queue Class ********/