summaryrefslogtreecommitdiffstats
path: root/cpukit/score/cpu/unix/cpu.c
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>1998-03-31 14:19:27 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>1998-03-31 14:19:27 +0000
commit5e34bf4b95dc1611a7b9dfc1db896b633cbef8ab (patch)
tree73c7feef7f15e2be3dd2d7bc71c4e115a40d1f9b /cpukit/score/cpu/unix/cpu.c
parentTaking care of minor build problems (diff)
downloadrtems-5e34bf4b95dc1611a7b9dfc1db896b633cbef8ab.tar.bz2
Added "sigemptyset()" call to insure that the memcmp() would work.
It appears that the new glibc does not clear all the bits of the signal set with a sigprocmask.
Diffstat (limited to '')
-rw-r--r--cpukit/score/cpu/unix/cpu.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/cpukit/score/cpu/unix/cpu.c b/cpukit/score/cpu/unix/cpu.c
index af59fdbc72..6eb338f991 100644
--- a/cpukit/score/cpu/unix/cpu.c
+++ b/cpukit/score/cpu/unix/cpu.c
@@ -243,7 +243,11 @@ void _CPU_Sync_io_Init()
unsigned32 _CPU_ISR_Get_level( void )
{
sigset_t old_mask;
+ sigset_t new_mask;
+#if defined(__linux__)
+ sigemptyset( &old_mask );
+#endif
sigprocmask(SIG_BLOCK, 0, &old_mask);
if (memcmp((void *)&posix_empty_mask, (void *)&old_mask, sizeof(sigset_t)))