- if (__is_threaded) {
- /* Block all signals on all other threads */
- sigset_t fullmask;
- sigfillset(&fullmask);
- (void)_sigprocmask(SIG_SETMASK, &fullmask, NULL);
-
- /* <rdar://problem/8400096> Set the workqueue killable */
- __pthread_workqueue_setkill(1);
-
- (void)pthread_sigmask(SIG_SETMASK, &act.sa_mask, NULL);
- (void)pthread_kill(pthread_self(), SIGABRT);
- } else {
- (void)_sigprocmask(SIG_SETMASK, &act.sa_mask, NULL);
- (void)kill(getpid(), SIGABRT);
- }
+
+ /* Block all signals on all other threads */
+ sigset_t fullmask;
+ sigfillset(&fullmask);
+ (void)_sigprocmask(SIG_SETMASK, &fullmask, NULL);
+
+ /* <rdar://problem/8400096> Set the workqueue killable */
+ __pthread_workqueue_setkill(1);
+
+ (void)pthread_sigmask(SIG_SETMASK, &act.sa_mask, NULL);
+ (void)pthread_kill(pthread_self(), SIGABRT);
+