summaryrefslogtreecommitdiff
path: root/condvar.c
diff options
context:
space:
mode:
authorrpj <rpj>1999-02-02 02:01:56 +0000
committerrpj <rpj>1999-02-02 02:01:56 +0000
commitcc29ad943903e9b8dba96cd978cb126f79f73e38 (patch)
tree17a310f2fb26c829acbecf498453531637bf863c /condvar.c
parent6237335fec273ac2b00c32609a8eef91c6ec7473 (diff)
Mods to compile under Mingw32 egcs.
Tue Feb 2 18:07:43 1999 Ross Johnson <rpj@swan.canberra.edu.au> * implement.h: Add #include <pthread.h>. Change sem_t to _pthread_sem_t. Various patches by Kevin Ruland <Kevin.Ruland@anheuser-busch.com> * signal.c (pthread_sigmask): Add and modify casts. Reverse LHS/RHS bitwise assignments. * pthread.h: Remove #include <semaphore.h>. (_PTHREAD_ATTR_VALID): Add cast. (struct pthread_t_): Add sigmask element. * dll.c: Add "extern C" for DLLMain. (DllMain): Add cast. * create.c (pthread_create): Set sigmask in thread. * condvar.c: Remove #include. Change sem_* to _pthread_sem_*. * attr.c: Changed #include. * Makefile.in: Additional targets and changes to build the library as a DLL. Fri Jan 29 11:56:28 1999 Ross Johnson <rpj@swan.canberra.edu.au> * Makefile.in (OBJS): Add semaphore.o to list. * semaphore.c (_pthread_sem_timedwait): Move from private.c. Rename sem_* to _pthread_sem_*. * pthread.h (pthread_cond_t): Change type of sem_t. _POSIX_SEMAPHORES no longer defined. * semaphore.h: Contents moved to implement.h. Removed from source tree. * implement.h: Add semaphore function prototypes and ename all functions to prepend '_pthread_'. They are now private to the pthreads-win32 implementation. * private.c: Change #warning. Move _pthread_sem_timedwait() to semaphore.c. * cleanup.c: Change #warning. * misc.c: Remove #include <errno.h> * pthread.def: Cleanup CVS merge conflicts. * global.c: Ditto. * ChangeLog: Ditto. * cleanup.c: Ditto.
Diffstat (limited to 'condvar.c')
-rw-r--r--condvar.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/condvar.c b/condvar.c
index 37d92e6..891705d 100644
--- a/condvar.c
+++ b/condvar.c
@@ -9,8 +9,6 @@
* Code contributed by John E. Bossom <JEB>.
*/
-#include <string.h>
-
#include "pthread.h"
#include "implement.h"
@@ -308,7 +306,7 @@ pthread_cond_init (pthread_cond_t * cond, const pthread_condattr_t * attr)
cv->waiters = 0;
cv->wasBroadcast = FALSE;
- if (sem_init (&(cv->sema), 0, 1) != 0)
+ if (_pthread_sem_init (&(cv->sema), 0, 1) != 0)
{
goto FAIL0;
}
@@ -341,7 +339,7 @@ FAIL2:
(void) pthread_mutex_destroy (&(cv->waitersLock));
FAIL1:
- (void) sem_destroy (&(cv->sema));
+ (void) _pthread_sem_destroy (&(cv->sema));
free (cv);
cv = NULL;
@@ -388,7 +386,7 @@ pthread_cond_destroy (pthread_cond_t * cond)
{
cv = *cond;
- (void) sem_destroy (&(cv->sema));
+ (void) _pthread_sem_destroy (&(cv->sema));
(void) pthread_mutex_destroy (&(cv->waitersLock));
(void) CloseHandle (cv->waitersDone);
@@ -420,7 +418,7 @@ cond_timedwait (pthread_cond_t * cond,
* We keep the lock held just long enough to increment the count of
* waiters by one (above).
* Note that we can't keep it held across the
- * call to sem_wait since that will deadlock other calls
+ * call to _pthread_sem_wait since that will deadlock other calls
* to pthread_cond_signal
*/
if ((result = pthread_mutex_unlock (mutex)) == 0)
@@ -656,7 +654,7 @@ pthread_cond_signal (pthread_cond_t * cond)
if (cv->waiters > 0)
{
- result = sem_post (&(cv->sema));
+ result = _pthread_sem_post (&(cv->sema));
}
return (result);
@@ -713,7 +711,7 @@ pthread_cond_broadcast (pthread_cond_t * cond)
for (i = cv->waiters; i > 0 && result == 0; i--)
{
- result = sem_post (&(cv->sema));
+ result = _pthread_sem_post (&(cv->sema));
}
if (cv->waiters > 0 && result == 0)