From cvs-return-1010-apmail-apr-cvs-archive=apr.apache.org@apr.apache.org Fri Apr 06 23:51:40 2001 Return-Path: Delivered-To: apmail-apr-cvs-archive@apr.apache.org Received: (qmail 80557 invoked by uid 500); 6 Apr 2001 23:51:39 -0000 Mailing-List: contact cvs-help@apr.apache.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Reply-To: dev@apr.apache.org Delivered-To: mailing list cvs@apr.apache.org Received: (qmail 80546 invoked by uid 1093); 6 Apr 2001 23:51:38 -0000 Date: 6 Apr 2001 23:51:38 -0000 Message-ID: <20010406235138.80545.qmail@apache.org> From: wsanchez@apache.org To: apr-cvs@apache.org Subject: cvs commit: apr/threadproc/unix signals.c wsanchez 01/04/06 16:51:38 Modified: threadproc/unix signals.c Log: If we don't have sigwait(), but we have sigsuspend(), use the latter. Revision Changes Path 1.30 +7 -1 apr/threadproc/unix/signals.c Index: signals.c =================================================================== RCS file: /home/cvs/apr/threadproc/unix/signals.c,v retrieving revision 1.29 retrieving revision 1.30 diff -u -r1.29 -r1.30 --- signals.c 2001/04/04 07:35:52 1.29 +++ signals.c 2001/04/06 23:51:38 1.30 @@ -267,7 +267,7 @@ #endif /* SYS_SIGLIST_DECLARED */ -#if APR_HAS_THREADS && !defined(OS2) && APR_HAVE_SIGWAIT +#if APR_HAS_THREADS && (HAVE_SIGSUSPEND || APR_HAVE_SIGWAIT) && !defined(OS2) static void *signal_thread_func(void *signal_handler) { sigset_t sig_mask; @@ -303,6 +303,7 @@ #endif while (1) { +#if APR_HAVE_SIGWAIT int signal_received; if (apr_sigwait(&sig_mask, &signal_received) != 0) @@ -313,6 +314,11 @@ if (sig_func(signal_received) == 1) { return NULL; } +#elif HAVE_SIGSUSPEND + sigsuspend(&sig_mask); +#else +#error No apr_sigwait() and no sigsuspend(); I'm stuck. +#endif } }