- (djm) Use SA_INTERRUPT along SA_RESTART if present (equivalent for
   SunOS)
diff --git a/misc.c b/misc.c
index 47de873..4ec5d55 100644
--- a/misc.c
+++ b/misc.c
@@ -112,6 +112,10 @@
 		if (sig == SIGCHLD)
 			sa.sa_flags |= SA_RESTART;
 #endif
+#ifdef SA_INTERRUPT
+		if (sig == SIGCHLD)
+			sa.sa_flags |= SA_INTERRUPT;
+#endif
 		sa.sa_handler = act;
 		if (sigaction(sig, &sa, NULL) == -1)
 			return (mysig_t) -1;