Sisyphus repositório
Última atualização: 1 outubro 2023 | SRPMs: 18631 | Visitas: 37856303
en ru br
ALT Linux repositórios
S:1.10.6-alt2
5.0: 1.6.6-alt2
4.1: 1.6.6-alt1

Group :: Sistema/Bibliotecas
RPM: libhdf5

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs e FR  Repocop 

Patch: hdf5-sig.patch
Download


--- hdf5-1.6.5/src/H5detect.c.orig	2005-09-12 19:18:23.000000000 +0200
+++ hdf5-1.6.5/src/H5detect.c	2005-11-15 18:25:36.030721792 +0100
@@ -106,7 +106,7 @@
 static void detect_C99_integers64(void);
 static void detect_alignments(void);
 static size_t align_g[] = {1, 2, 4, 8, 16};
-static jmp_buf jbuf_g;
+static sigjmp_buf jbuf_g;
 
 
 /*-------------------------------------------------------------------------
@@ -360,7 +360,7 @@
     void		(*_handler2)(int) = signal(SIGSEGV, sigsegv_handler);	\
 									      \
     _buf = (char*)malloc(sizeof(TYPE)+align_g[NELMTS(align_g)-1]);		      \
-    if (setjmp(jbuf_g)) _ano++;						      \
+    if (sigsetjmp(jbuf_g, 1)) _ano++;						      \
     if (_ano<NELMTS(align_g)) {						      \
 	*((TYPE*)(_buf+align_g[_ano])) = _val; /*possible SIGBUS or SEGSEGV*/	\
 	_val2 = *((TYPE*)(_buf+align_g[_ano]));	/*possible SIGBUS or SEGSEGV*/	\
@@ -376,7 +376,7 @@
 	    memcpy(_buf+align_g[_ano]+(INFO.offset/8),((char *)&_val)+(INFO.offset/8),(size_t)(INFO.precision/8)); \
 	_val2 = *((TYPE*)(_buf+align_g[_ano]));				      \
 	if(_val!=_val2)							      \
-	    longjmp(jbuf_g, 1);						      \
+	    siglongjmp(jbuf_g, 1);						      \
 	/* End Cray Check */						      \
 	(INFO.align)=align_g[_ano];					      \
     } else {								      \
@@ -460,7 +460,7 @@
 sigsegv_handler(int UNUSED signo)
 {
     signal(SIGSEGV, sigsegv_handler);
-    longjmp(jbuf_g, 1);
+    siglongjmp(jbuf_g, 1);
 }
 
 
@@ -485,7 +485,7 @@
 sigbus_handler(int UNUSED signo)
 {
     signal(SIGBUS, sigbus_handler);
-    longjmp(jbuf_g, 1);
+    siglongjmp(jbuf_g, 1);
 }
 
 
 
projeto & código: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
mantenedor atual: Michael Shigorin
mantenedor da tradução: Fernando Martini aka fmartini © 2009