summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorScott Wegner <swegner@hdfgroup.org>2007-08-10 19:07:06 (GMT)
committerScott Wegner <swegner@hdfgroup.org>2007-08-10 19:07:06 (GMT)
commitb91e17b6cfd99363502435406d2f0f323cfac380 (patch)
tree7bc9441a190c9a9249b0a09d7081329d318a2057
parente039e5125c8a741570ce55ba7f9089e02362591a (diff)
downloadhdf5-b91e17b6cfd99363502435406d2f0f323cfac380.zip
hdf5-b91e17b6cfd99363502435406d2f0f323cfac380.tar.gz
hdf5-b91e17b6cfd99363502435406d2f0f323cfac380.tar.bz2
[svn-r14067] Purpose: Revise usage of H5_HAVE_SIGLONGJMP
Description: The way I had integrated H5_HAVE_SIGLONGJMP previously, we conditionally removed far more functionality than we needed. As a result, Windows type alignment was lost. This commit localizes the ifdef so it only surrounds the actual call to siglongjmp. This is equivalent to what we've done in the past-- simply comment out the line. Tested: VNET on WinXP
-rw-r--r--src/H5detect.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/H5detect.c b/src/H5detect.c
index 17f6db2..1f79869 100644
--- a/src/H5detect.c
+++ b/src/H5detect.c
@@ -356,7 +356,7 @@ precision (detected_t *d)
COMP_ALIGN = (size_t)((char*)(&(s.x)) - (char*)(&s)); \
}
-#if defined(H5_HAVE_LONGJMP) && defined(H5_HAVE_SIGNAL) && defined(H5_HAVE_SIGLONGJMP)
+#if defined(H5_HAVE_LONGJMP) && defined(H5_HAVE_SIGNAL)
#define ALIGNMENT(TYPE,INFO) { \
char *volatile _buf=NULL; \
volatile TYPE _val=1; \
@@ -493,7 +493,9 @@ sigbus_handler(int UNUSED signo)
{
signal(SIGBUS, sigbus_handler);
longjmp(jbuf_g, 1);
+#ifdef H5_HAVE_SIGLONGJMP
siglongjmp(jbuf_g, 1);
+#endif /* H5_HAVE_SIGLONGJMP */
}