summaryrefslogtreecommitdiff
path: root/lib/libpthread/uthread
diff options
context:
space:
mode:
authorDavid Leonard <d@cvs.openbsd.org>2000-01-06 07:20:02 +0000
committerDavid Leonard <d@cvs.openbsd.org>2000-01-06 07:20:02 +0000
commit82db8228ab48498434644bef349042bb9b8d2f14 (patch)
treef57af9d5e5986a8ae24f981dcb4b5f77721c223b /lib/libpthread/uthread
parent7e4b33b07e42dc4e9c0530e1afeb56012e56a53c (diff)
unused var, test lock return
Diffstat (limited to 'lib/libpthread/uthread')
-rw-r--r--lib/libpthread/uthread/uthread_once.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/libpthread/uthread/uthread_once.c b/lib/libpthread/uthread/uthread_once.c
index 27b3a4d594e..a69116bfa33 100644
--- a/lib/libpthread/uthread/uthread_once.c
+++ b/lib/libpthread/uthread/uthread_once.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: uthread_once.c,v 1.3 1999/11/25 07:01:40 d Exp $ */
+/* $OpenBSD: uthread_once.c,v 1.4 2000/01/06 07:20:01 d Exp $ */
/*
* Copyright (c) 1995 John Birrell <jb@cimlogic.com.au>.
* All rights reserved.
@@ -39,8 +39,11 @@
int
pthread_once(pthread_once_t * once_control, void (*init_routine) (void))
{
+ int ret;
+
if (once_control->state == PTHREAD_NEEDS_INIT) {
- pthread_mutex_lock(&(once_control->mutex));
+ if ((ret = pthread_mutex_lock(&(once_control->mutex))) != 0)
+ return ret;
if (once_control->state == PTHREAD_NEEDS_INIT) {
init_routine();
once_control->state = PTHREAD_DONE_INIT;