From eb133e1daa362ce860802ac4878890769af010f1 Mon Sep 17 00:00:00 2001 From: Karel Gardas Date: Fri, 20 Jun 2014 10:44:20 +0200 Subject: [PATCH 1/2] do not mask SIGSEGV to hide real crash culprit/place --- binsrc/virtuoso/viunix.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/binsrc/virtuoso/viunix.c b/binsrc/virtuoso/viunix.c index ee18a83af9..2593f81fd6 100644 --- a/binsrc/virtuoso/viunix.c +++ b/binsrc/virtuoso/viunix.c @@ -308,7 +308,10 @@ sigh_set_notifiers () i != SIGTERM && i != SIGHUP && i != SIGQUIT && - i != SIGPIPE) + i != SIGPIPE && + i != SIGSEGV) /* if we handle SIGSEGV, then crash backtrace + will point to us instead of to the real + crash place */ { if (SIG_ERR == signal (i, sigh_report_and_forget)) { From 20a393c0e874f3f8218aa4cff0c6d7937f1d164c Mon Sep 17 00:00:00 2001 From: Karel Gardas Date: Fri, 27 Jun 2014 20:40:46 +0200 Subject: [PATCH 2/2] fix Virtuoso compilation issue on Solaris while compiling with GNU C This patch fixes compilation issue on Solaris while using GNU C for compilation. Although this is not officially supported compiler for this OS still it is good to have it as a fall back option in case something's going wrong and you'd like to know if this is Solaris related issue or compiler related one. The fix is easy, Solaris does not provide NAN nor INFINITY defines so we're using those provided for WIN32. Please note that this is case only when compiling with GNU C. Sun's own C compiler supports both defines of course! --- libsrc/Dk/Dktypes.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libsrc/Dk/Dktypes.h b/libsrc/Dk/Dktypes.h index cefcfb5590..3c36143ce2 100644 --- a/libsrc/Dk/Dktypes.h +++ b/libsrc/Dk/Dktypes.h @@ -190,7 +190,7 @@ typedef long long int64; #endif #endif -#ifdef WIN32 +#if defined(WIN32) || (defined(SOLARIS) && defined(__GNUC__)) #define INFINITY (DBL_MAX+DBL_MAX) #define NAN (INFINITY-INFINITY) #endif