Fix unchecked sigdelset() result in pthread_support
authorIvan Maidanski <ivmai@mail.ru>
Mon, 29 Feb 2016 21:13:57 +0000 (00:13 +0300)
committerIvan Maidanski <ivmai@mail.ru>
Mon, 29 Feb 2016 21:13:57 +0000 (00:13 +0300)
* pthread_support.c (GC_pthread_sigmask): Abort in case of sigdelset
failure.

pthread_support.c

index ba5389f..559c27f 100644 (file)
@@ -1215,7 +1215,8 @@ GC_INNER void GC_init_parallel(void)
         fudged_set = *set;
         sig_suspend = GC_get_suspend_signal();
         GC_ASSERT(sig_suspend >= 0);
-        sigdelset(&fudged_set, sig_suspend);
+        if (sigdelset(&fudged_set, sig_suspend) != 0)
+            ABORT("sigdelset failed");
         set = &fudged_set;
     }
     return(REAL_FUNC(pthread_sigmask)(how, set, oset));