Browse Source

major bugfix for sigset_t (it was mistakenly 1024 bytes instead of bits)

note that object files using sigset_t (or struct sigaction) need to be
recompiled to work correctly after this fix.
Rich Felker 14 years ago
parent
commit
e8362c8b51
2 changed files with 2 additions and 2 deletions
  1. 1 1
      include/bits/alltypes.h.sh
  2. 1 1
      include/setjmp.h

+ 1 - 1
include/bits/alltypes.h.sh

@@ -96,7 +96,7 @@ TYPEDEF int timer_t;
 TYPEDEF int clockid_t;
 TYPEDEF unsigned long clock_t;
 
-TYPEDEF struct { unsigned long __bits[1024/sizeof(long)]; } sigset_t;
+TYPEDEF struct { unsigned long __bits[128/sizeof(long)]; } sigset_t;
 TYPEDEF struct __siginfo siginfo_t;
 
 TYPEDEF unsigned int socklen_t;

+ 1 - 1
include/setjmp.h

@@ -10,7 +10,7 @@ extern "C" {
 
 #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
  || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
-typedef unsigned long sigjmp_buf[(1024+sizeof(jmp_buf))/sizeof(long)];
+typedef unsigned long sigjmp_buf[(128+sizeof(jmp_buf))/sizeof(long)];
 #ifdef _GNU_SOURCE
 #define jmp_buf sigjmp_buf
 #endif