summaryrefslogtreecommitdiff
path: root/mutex.c
diff options
context:
space:
mode:
authorrpj <rpj>2001-07-18 07:41:47 +0000
committerrpj <rpj>2001-07-18 07:41:47 +0000
commitb3e91e9179a85320d6e4aa63780cb653ff6a5a0e (patch)
tree90a054b0533f577c43cd7d76fd24f4690d913786 /mutex.c
parent024172be698e329e76c95e32c29ca5023fc036ac (diff)
Fix potential NULL pointer dereferences.
Contributed by - "Scott McCaskill" <scott@magruder.org> * mutex.c (pthread_mutexattr_init): Return ENOMEM immediately and don't dereference the NULL pointer if calloc fails. (pthread_mutexattr_getpshared): Don't dereference a pointer that is possibly NULL. * barrier.c (pthread_barrierattr_init): Likewise (pthread_barrierattr_getpshared): Don't dereference a pointer that is possibly NULL. * condvar.c (pthread_condattr_getpshared): Don't dereference a pointer that is possibly NULL.
Diffstat (limited to 'mutex.c')
-rw-r--r--mutex.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/mutex.c b/mutex.c
index f32cf18..49a1a18 100644
--- a/mutex.c
+++ b/mutex.c
@@ -290,10 +290,10 @@ pthread_mutexattr_init (pthread_mutexattr_t * attr)
{
ma->pshared = PTHREAD_PROCESS_PRIVATE;
ma->kind = PTHREAD_MUTEX_DEFAULT;
-
- *attr = ma;
}
+ *attr = ma;
+
return(result);
} /* pthread_mutexattr_init */
@@ -384,16 +384,16 @@ pthread_mutexattr_getpshared (const pthread_mutexattr_t * attr,
* ------------------------------------------------------
*/
{
- int result = 0;
+ int result;
if ((attr != NULL && *attr != NULL) &&
(pshared != NULL))
{
*pshared = (*attr)->pshared;
+ result = 0;
}
else
{
- *pshared = PTHREAD_PROCESS_PRIVATE;
result = EINVAL;
}