1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
Index: hdf5-1.8.4/src/H5detect.c
===================================================================
--- hdf5-1.8.4.orig/src/H5detect.c 2010-01-29 12:21:36.000000000 +0100
+++ hdf5-1.8.4/src/H5detect.c 2010-01-29 12:21:52.000000000 +0100
@@ -470,6 +470,12 @@
static void
sigsegv_handler(int UNUSED signo)
{
+ sigset_t set;
+
+ sigemptyset(&set);
+ sigaddset(&set,SIGSEGV);
+ sigprocmask(SIG_UNBLOCK,&set,NULL);
+
signal(SIGSEGV, sigsegv_handler);
longjmp(jbuf_g, 1);
}
@@ -495,6 +501,12 @@
static void
sigbus_handler(int UNUSED signo)
{
+ sigset_t set;
+
+ sigemptyset(&set);
+ sigaddset(&set,SIGBUS);
+ sigprocmask(SIG_UNBLOCK,&set,NULL);
+
signal(SIGBUS, sigbus_handler);
longjmp(jbuf_g, 1);
#ifdef H5_HAVE_SIGLONGJMP
|