aboutsummaryrefslogtreecommitdiffstats
path: root/fbtools.c
diff options
context:
space:
mode:
Diffstat (limited to 'fbtools.c')
-rw-r--r--fbtools.c40
1 files changed, 0 insertions, 40 deletions
diff --git a/fbtools.c b/fbtools.c
index 708dbe4..ef0e160 100644
--- a/fbtools.c
+++ b/fbtools.c
@@ -540,43 +540,3 @@ gfxstate* fb_init(char *device, char *mode, int vt)
fb_cleanup_display();
exit(1);
}
-
-/* -------------------------------------------------------------------- */
-/* handle fatal errors */
-
-static jmp_buf fb_fatal_cleanup;
-
-static void
-fb_catch_exit_signal(int signal)
-{
- siglongjmp(fb_fatal_cleanup,signal);
-}
-
-void
-fb_catch_exit_signals(void)
-{
- struct sigaction act,old;
- int termsig;
-
- memset(&act,0,sizeof(act));
- act.sa_handler = fb_catch_exit_signal;
- sigemptyset(&act.sa_mask);
- sigaction(SIGINT, &act,&old);
- sigaction(SIGQUIT,&act,&old);
- sigaction(SIGTERM,&act,&old);
-
- sigaction(SIGABRT,&act,&old);
- sigaction(SIGTSTP,&act,&old);
-
- sigaction(SIGBUS, &act,&old);
- sigaction(SIGILL, &act,&old);
- sigaction(SIGSEGV,&act,&old);
-
- if (0 == (termsig = sigsetjmp(fb_fatal_cleanup,0)))
- return;
-
- /* cleanup */
- fb_cleanup_display();
- fprintf(stderr,"Oops: %s\n",strsignal(termsig));
- exit(42);
-}