bug-glibc
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] non-scalar sigset_t


From: Momchil Velikov
Subject: [PATCH] non-scalar sigset_t
Date: 14 Nov 2002 00:42:02 +0200
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

generic/sigset-cvt-mask.h assumes sigset_t is a scalar type.

~velco
diff -rudpN libc/tags/initial/sysdeps/generic/sigset-cvt-mask.h 
libc/trunk/sysdeps/generic/sigset-cvt-mask.h
--- libc/tags/initial/sysdeps/generic/sigset-cvt-mask.h Sun Nov 10 23:45:50 2002
+++ libc/trunk/sysdeps/generic/sigset-cvt-mask.h        Sun Nov 10 23:37:07 2002
@@ -27,7 +27,10 @@ static inline int __attribute__ ((unused
 sigset_set_old_mask (sigset_t *set, int mask)
 {
   if (sizeof (__sigset_t) == sizeof (unsigned int))
-    *set = (unsigned int) mask;
+    {
+      unsigned int *__set = (unsigned int *) set;
+      *__set = mask;
+    }
   else
     {
       register unsigned int __sig;
@@ -49,7 +52,7 @@ static inline int __attribute__ ((unused
 sigset_get_old_mask (const sigset_t *set)
 {
   if (sizeof (sigset_t) == sizeof (unsigned int))
-    return (unsigned int) *set;
+    return *(unsigned int *) set;
   else
     {
       unsigned int mask = 0;

reply via email to

[Prev in Thread] Current Thread [Next in Thread]