Diffstat (limited to 'libopie2/opiecore/oapplication.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | libopie2/opiecore/oapplication.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/libopie2/opiecore/oapplication.cpp b/libopie2/opiecore/oapplication.cpp index 7a6c174..06d8ba2 100644 --- a/libopie2/opiecore/oapplication.cpp +++ b/libopie2/opiecore/oapplication.cpp @@ -33,2 +33,5 @@ +#include <signal.h> +#include <stdio.h> + OApplication* OApplication::_instance = 0; @@ -87,2 +90,11 @@ void OApplication::init() OApplication::_instance = this; + + /* register SIGSEGV handler to give programs an option + * to exit gracefully, e.g. save or close devices or files. + struct sigaction sa; + sa.sa_handler = ( void (*)(int) ) &segv_handler; + sa.sa_flags = SA_SIGINFO | SA_RESTART; + sigemptyset(&sa.sa_mask); + sigaction(SIGSEGV, &sa, NULL); + */ } |