mirror of
https://github.com/apache/nuttx.git
synced 2026-05-28 11:56:10 +08:00
pthread_barrier_destroy: Fix return value, if sem_getvalue fails
sem_getvalue returns ERROR and sets errno if it fails, we don't want to return OK in this case, we want to return the non-negated error number.
This commit is contained in:
@@ -72,10 +72,10 @@ int pthread_barrier_destroy(FAR pthread_barrier_t *barrier)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
ret = sem_getvalue(&barrier->sem, &semcount);
|
ret = nxsem_get_value(&barrier->sem, &semcount);
|
||||||
if (ret != OK)
|
if (ret < 0)
|
||||||
{
|
{
|
||||||
return ret;
|
return -ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (semcount < 0)
|
if (semcount < 0)
|
||||||
@@ -83,7 +83,7 @@ int pthread_barrier_destroy(FAR pthread_barrier_t *barrier)
|
|||||||
return EBUSY;
|
return EBUSY;
|
||||||
}
|
}
|
||||||
|
|
||||||
sem_destroy(&barrier->sem);
|
ret = -nxsem_destroy(&barrier->sem);
|
||||||
barrier->count = 0;
|
barrier->count = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user