From: Ray Strode Date: Thu, 19 Jun 2008 14:53:08 +0000 (-0400) Subject: return to text mode on crash X-Git-Tag: 0.4.0~22 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e77d7112d8e7a6d769ef885e0fa5c7c4257d5da0;p=thirdparty%2Fplymouth.git return to text mode on crash --- diff --git a/src/main.c b/src/main.c index b586f45c..86597cd6 100644 --- a/src/main.c +++ b/src/main.c @@ -29,8 +29,11 @@ #include #include #include +#include #include +#include + #include "ply-answer.h" #include "ply-boot-server.h" #include "ply-boot-splash.h" @@ -385,6 +388,18 @@ initialize_environment (state_t *state) return true; } +static void +on_crash (int signal) +{ + int fd; + + fd = open ("/dev/tty7", O_RDWR | O_NOCTTY); + + ioctl (fd, KDSETMODE, KD_TEXT); + + close (fd); +} + int main (int argc, char **argv) @@ -423,6 +438,9 @@ main (int argc, return EX_UNAVAILABLE; } + signal (SIGABRT, on_crash); + signal (SIGSEGV, on_crash); + state.loop = ply_event_loop_new (); /* before do anything we need to make sure we have a working